本節說明如何在小型測試儲存庫上試用一些最常使用的功能。當然,其中並未說明所有內容,因為這只是快速入門指南。一旦您上手並執行,您應該花點時間閱讀本使用者指南的其餘部分,其中會更詳細地說明各種事項。其中也說明了有關設定適當版本控制伺服器的更多資訊。
對於實際專案,您會在某個安全位置設定儲存庫,並使用版本控制伺服器來控制它。為了本教學的目的,我們將使用「版本控制」的「本機儲存庫」功能,它不透過伺服器就能直接存取在您的硬碟機中建立的儲存庫。
首先,請在您的電腦中建立一個新的空資料夾。它可以放在任何位置,但在本教學中,我們將會把它命名為 C:\svn_repos
。現在請右鍵按一下新資料夾並在內容功能表中選擇 → 。接著,儲存庫將在資料夾內建立,供您使用。我們也會按一下 按鈕,建立預設的內部資料夾結構。
本機儲存庫功能非常適合用於測試和評量,但除非您是一個只在單一電腦上工作的開發人員,否則您應該一直使用適當的版本控制伺服器。在小型公司中,為了避免設定伺服器的工程,而只是在網路共用項目中存取您的儲存庫,這樣雖令人覺得有吸引力,但千萬不要這麼做。您將會遺失資料。請閱讀 「在網路共用項目中存取儲存庫」的章節,以瞭解這樣做是個壞點子,以及如何設定伺服器。
現在我們有一個儲存庫,但它目前是完全空的。假設我在 C:\Projects\Widget1
中有一組檔案,我想新增這些檔案。請在檔案總管中前往 Widget1
資料夾,並右鍵按一下它。現在,請選擇 → ,這會開啟一個對話方塊
版本控制儲存庫會透過 URL 參照,它讓您可以在網際網路上任何地方指定儲存庫。在本案例中,我們需要指向我們自己的本機儲存庫,其 URL 為 file:///c:/svn_repos/trunk
,並且我們將自己的專案名稱 Widget1
新增到其中。請注意,在 file:
之後有 3 個斜線,且全文均使用正斜線。
此對話方塊的另一個重要特點是 匯入訊息 方塊,它可讓您輸入說明您的操作的訊息。當您檢視專案記錄時,這些提交訊息會提供更動內容以及原因的寶貴指引。在這個範例中,我們可以輸入簡單的內容,如 “匯入 Widget1 專案”。按一下 ,此資料夾就會新增到您的儲存庫。
在我們的儲存庫中建立專案後,我們需要建立工作副本,以供日常使用。請注意,匯入資料夾的動作並不會自動將該資料夾轉換為工作副本。Subversion 中建立新工作副本的術語是 簽出
。我們要將儲存庫中的 Widget1 資料夾簽出,簽入電腦上名為 C:\Projects\Widget1-Dev
的開發資料夾。建立該資料夾,然後對它按一下右鍵並選擇 → 。接著輸入要簽出的 URL,在本例中為 file:///c:/svn_repos/trunk/Widget1
,然後按一下 。我們的開發資料夾會填入儲存庫中的檔案。
預設設定下,簽出功能表項目並沒有位於 TortoiseSVN 子功能表中,而是顯示在檔案總管最上方。TortoiseSVN 指令若不在子功能表中,會加上前置字 SVN
:
您會注意到此資料夾的外觀不同於我們的原始資料夾。每一個檔案在左下角都有綠色的核取標記。這些是 TortoiseSVN 的狀態圖示,只會出現在工作副本中。綠色表示檔案未變更,與儲存庫中的版本相同。
開始工作。我們在 Widget1-Dev
資料夾中開始編輯檔案,假設我們對 Widget1.c
和 ReadMe.txt
進行變更。請注意,這些檔案上的圖示覆蓋層已變更為紅色,表示已在本地變更過。
但是這些變更是什麼?對其中一個已變更檔案按一下右鍵並選擇
→ 。TortoiseSVN 的檔案比較工具會啟動,的確切顯示已變更的行數。
好,因此我們對變更感到滿意,讓我們來更新儲存庫。此動作稱為變更的〈程式碼類別〉Commit程式碼類別〉。在〈程式碼類別檔案名稱〉Widget1-Dev程式碼類別檔案名稱〉資料夾上按一下右鍵,然後選擇
→ 。commit 對話方塊會列出已變更的檔案,每個檔案都有核取方塊。您可能只想選擇這些檔案的子集,但在這個案例中,我們會 commit 兩個檔案的變更。輸入訊息來描述變更為何,然後按一下 。進度對話方塊會顯示正在上傳至儲存庫的檔案,然後您就完成了。隨著專案開發,您需要新增檔案 - 假設您在 〈程式碼類別檔案名稱〉Extras.c程式碼類別檔案名稱〉 中新增一些新功能,並在現有的 〈程式碼類別檔案名稱〉Makefile程式碼類別檔案名稱〉 中新增參照。在資料夾上按一下右鍵並選擇
→ 。Add 對話方塊現在會顯示所有未加入版本控制的檔案,您可以選擇想要新增的檔案。另一個新增檔案的方式是在檔案本身上按一下右鍵,然後選擇 → 。現在當您要 commit 這個資料夾時,新檔案會顯示為 已新增,現有檔案會顯示為 已修改。請注意您可以按兩下已修改的檔案,來明確查看已做的變更。
TortoiseSVN 最有用的功能之一為 Log 對話方塊。這個對話方塊會顯示您對檔案或資料夾的所有提交清單,並顯示您輸入的那些詳細的提交訊息(您 確實 輸入了一個提交訊息,如建議嗎?如果不是,現在您知道為什麼這一點很重要了)。
好,因此我這裡作了一點弊,並使用 TortoiseSVN 儲存庫的螢幕擷取。
上格顯示一個提交的修改記錄清單,同時顯示提交訊息的開頭。如果您選擇這些修改記錄之一,中間格會顯示該修改記錄的完整記錄訊息,而下格會顯示已變更檔案與資料夾清單。
這些格中的每一個都有內容選單,可提供您更多的方法來使用資訊。在下格中,您可以按兩下一個檔案來明確查看該修改記錄做了哪些變更。請閱讀 名為「修改記錄對話方塊」 的區段,以取得完整說明。