如果您是一個單人開發團隊,您可能並不真正需要一個完整的版本控制系統,但是為每個釋出的版本建立原始碼備份無疑是重要的。
透過利用生成後事件和簡單的批處理指令碼的強大功能,您可以輕鬆地新增讓visualstudio為每個釋出程式碼生成自動建立原始碼備份的功能。
我們的解決方案很簡單:每當發生成功的構建事件時,我們都會執行一個批處理指令碼,該指令碼將在相應的visualstudio專案資料夾中建立所有檔案的壓縮存檔(可以選擇標記和時間戳)。
就這樣。你所要做的就是遵循下面的步驟。
首先,您需要從本文底部的連結下載並提取批處理指令碼檔案。此外,您還需要7-Zip命令列工具(它包含在“完整”版本的專案構建備份指令碼中,或者您可以單獨下載)。在我們的示例中,我們將這些檔案提取到目錄“C:\Tools”,但任何位置都可以。
雙擊相應專案下的“我的專案”,開啟VisualStudio專案屬性。
在專案屬性中,轉到編譯部分。
在右下角,單擊Build Events按鈕。
在本例中,我們希望在編譯操作成功後進行備份。確保您可以選擇執行後期生成事件“On successful build”,然後單擊Edit post build按鈕。
下面的命令只為版本配置的編譯建立一個構建備份(這是what IF condition checks for),因為實際上,我們可能不想對每個除錯/測試構建進行備份。此外,當前時間戳將附加(/D開關),備份檔案採用7z檔案格式(/7z),而不是zip格式。透過新增/T“$(ConfigurationName)”作為引數,我們將生成型別(本例中為Release)附加到備份檔案的名稱中。
IF “$(ConfigurationName)” == “Release” CALL C:\Tools\ProjectBuildBackup.bat “$(SolutionDir)” “$(ProjectDir)” “$(ProjectName)” /T “$(ConfigurationName)” /D /7z
使用“巨集”按鈕,可以預先填充特定於visualstudio專案的資訊,因此不需要硬編碼。您可以根據需要調整此命令(尤其是批處理檔案的位置),但前三個引數可能不需要更改。
重要的是要記住,無論所選的專案配置如何,事後操作都會執行。這就是為什麼我們需要新增IF“$(ConfigurationName)”==“Release”語句的原因–否則備份操作將在每個成功的構建事件上發生。
完成命令並應用它之後,命令字串應該出現在Post build events部分。
請注意,雖然“CALL”命令在技術上不是必需的,但強烈建議您忽略它,否則在此之後新增的任何事件都可能無法執行。
現在,無論何時在版本配置中使用專案執行編譯/生成,都將看到生成備份操作的輸出。
[…]
每個成功的發行版構建都會建立一個新的時間戳存檔,其中包含子目錄“Builds”中的解決方案資料夾(如果需要,可以使用/O開關自定義)。
每個備份的內容都是完整的VisualStudio專案—原始檔、配置設定、編譯的二進位制檔案等等—這使它成為真正的時間點備份。
最後,我們只想重申,這個工具並不是要取代一個成熟的版本控制系統。對於開發人員來說,它只是一個有用的工具,可以在每次編譯之後建立專案原始碼的快照。
如果您必須返回並檢查以前的版本,為時間點編譯準備一個隨時可用(只需提取到一個新目錄)的專案檔案真的很有用。
下載專案生成備份指令碼
下載7-Zip命令列工具(注意:7za實用工具還與從專案構建備份指令碼下載的工具捆綁在一起)
檔案加密和解密可以是一個工作位。但是,使用PowerShell擴充套件,可以將程序精簡為一行命令。為此,我們需要安裝Gpg4win和Powershell模組。使用指令碼,我們可以自動化檔案加密和解密過程。 ...
...,一切都會很好,但那是不必要的麻煩。我們將向您展示如何跨各種流行的Windows應用程式自動儲存工作。 ...
... visualstudio程式碼是一個輕量級的原始碼編輯器,它在特性方面仍然很重要。 ...
...是最使用者友好的方法,但它是一個健壯而強大的工具。visualstudio程式碼是Atom的另一個偉大的免費替代品,也值得一試。 ...
...午9點。這樣,你會有一個新的牆紙等著你每天早上。 如何新增和自定義自動牆快捷方式 在我們開始之前,你得做兩件事。首先是確保啟用了不受信任的快捷方式功能。第二種方法是建立一個包含你想要迴圈瀏覽的所有桌布的...
...動建立強密碼。 相關報道:谷歌智慧鎖到底是什麼? 如何生成安全密碼 首先,確保密碼儲存已啟用(預設情況下應啟用)。要進行檢查,請單擊右上角的個人資料圖片,然後單擊“密碼”。您還可以鍵入chrome://設定/密碼進入...
...需的資料範圍。單擊網格圖示以啟用手動選擇。 相關:如何將Excel文件匯入Google工作表 輸入或選擇資料範圍後,單擊“確定” 之後,圖表將填充所選行範圍中包含的所有資料。 注意:由於Google跨平臺處理圖表和表格的方式,...
...它也會在任務完成時使系統重新進入睡眠狀態。 相關:如何在Windows10上安排自動維護(以及它的功能) 自動清理硬碟 如果你想確保你的硬碟上有足夠的空間,並擺脫舊的檔案,你不再需要,這將擺脫大量的臨時檔案和其他東...
...後的指令碼,而無需退出並重新執行指令碼。 相關:如何在任何計算機上啟動時執行程式 如果希望自動熱鍵指令碼在Windows啟動時自動執行,可以建立一個快捷方式並將該快捷方式放在啟動資料夾中。右鍵單擊.ahk指令碼檔案...