手冊

檢出工作副本

要取得工作副本,您需要從儲存庫執行檢出

在 Windows 檔案總管中選擇您想要放置工作副本的目錄。按一下滑鼠右鍵以彈出內容選單,然後選擇TortoiseSVN檢出...命令,這會開啟以下對話方塊

圖 4.7. 檢出對話方塊

The Checkout dialog


如果您輸入的資料夾名稱尚不存在,則會建立一個具有該名稱的目錄。

重要事項

在預設設定中,「檢出」選單項目並未位於 TortoiseSVN 子選單中,而是顯示在檔案總管選單的最上方。不在子選單中的 TortoiseSVN 命令會加上 SVN 前綴:SVN 檢出...

如果專案包含對外部專案的參考,而您想同時檢出這些專案,請使用省略外部參考核取方塊。

重要事項

如果勾選了省略外部參考,或者您希望增加深度值,則您必須使用TortoiseSVN更新至特定版本...而不是TortoiseSVN更新來執行工作副本的更新。標準更新將包含所有外部參考並保持現有的深度。

建議您僅檢出目錄樹的 trunk 部分或更低層級。如果您在 URL 中指定目錄樹的父路徑,那麼您可能會因為取得整個儲存庫樹的副本,包括專案的每個分支和標籤而導致硬碟空間不足!

匯出

有時您可能想要建立一個不包含任何 .svn 目錄的本機副本,例如,建立原始碼的壓縮 tarball 檔案。請閱讀名為「匯出 Subversion 工作副本」的章節,以了解如何執行此操作。

檢出深度

您可以選擇想要檢出的深度,這讓您可以指定遞迴到子資料夾的深度。如果您只需要大型樹狀結構的幾個部分,您可以僅檢出頂層資料夾,然後遞迴更新選定的資料夾。

完整遞迴

檢出整個樹狀結構,包括所有子資料夾和子資料夾。

直接子項,包含資料夾

檢出指定的目錄,包括所有檔案和子資料夾,但不填入子資料夾。

僅檔案子項

檢出指定的目錄,包括所有檔案,但不檢出任何子資料夾。

僅此項目

僅檢出目錄。不使用檔案或子資料夾填入它。

工作副本

保留工作副本中指定的深度。此選項未在檢出對話方塊中使用,但它是所有其他具有深度設定的對話方塊中的預設值。

排除

用於在資料夾已填入後減少工作副本深度。此選項僅在更新至特定版本對話方塊中可用。

若要輕鬆選取您要檢出的項目,並強制產生的工作副本僅保留這些項目,請按一下選擇項目...按鈕。這會開啟一個新的對話方塊,您可以在其中勾選您想要在工作副本中的所有項目,並取消勾選您不想要的所有項目。產生的工作副本隨後稱為稀疏檢出。此類工作副本的更新將不會提取遺失的檔案和資料夾,而只會更新您已在工作副本中擁有的內容。

如果您檢出稀疏工作副本(即,透過為檢出深度選擇完整遞迴以外的選項),您可以稍後使用以下方法之一輕鬆新增或移除子資料夾。

使用更新至特定版本進行稀疏更新

按一下滑鼠右鍵已檢出的資料夾,然後使用TortoiseSVN更新至特定版本並選取選擇項目...。這會開啟與原始檢出中可用的相同對話方塊,並允許您選取或取消選取要包含在檢出中的項目。此方法非常靈活,但可能很慢,因為資料夾中的每個項目都會個別更新。

使用儲存庫瀏覽器進行稀疏更新

按一下滑鼠右鍵已檢出的資料夾,然後使用TortoiseSVN儲存庫瀏覽器以開啟儲存庫瀏覽器。找到您想要新增至工作副本的子資料夾,然後使用內容選單更新項目至特定版本...

使用檢查修改進行稀疏更新

在檢查修改對話方塊中,首先Shift+按一下檢查儲存庫按鈕。對話方塊將顯示儲存庫中但您尚未檢出的所有檔案和資料夾,顯示為 遠端新增按一下滑鼠右鍵您想要新增至工作副本的資料夾,然後使用內容選單更新

當您只想檢出大型樹狀結構的部分內容,但又希望方便地更新單個工作副本時,此功能非常有用。假設您有一個大型樹狀結構,其中包含子資料夾 Project01Project99,而您只想檢出 Project03Project25Project76/SubProj。請使用以下步驟

  1. 檢出父資料夾,深度為僅此項目。您現在有一個空的頂層資料夾。

  2. 選取新的資料夾,並使用TortoiseSVN儲存庫瀏覽器以顯示儲存庫內容。

  3. Project03 上按一下滑鼠右鍵,然後內容選單更新項目至特定版本...。保持預設設定,然後按一下確定。您現在已完全填入該資料夾。

    Project25 重複相同的步驟。

  4. 導覽至 Project76/SubProj 並執行相同的操作。這次請注意,Project76 資料夾除了 SubProj 之外沒有任何內容,而 SubProj 本身已完全填入。Subversion 已為您建立中間資料夾,但未填入它們。

變更工作副本深度

一旦您將工作副本檢出到特定深度,您可以稍後使用內容選單更新項目至特定版本...來變更該深度,以取得更多或更少的內容。在該對話方塊中,請務必勾選使深度固定核取方塊。

使用較舊的伺服器

1.5 之前的伺服器不理解工作副本深度請求,因此它們無法始終有效地處理請求。該命令仍然有效,但較舊的伺服器可能會傳送所有資料,讓用戶端篩選出不需要的內容,這可能意味著大量的網路流量。如果可能,您應該將伺服器升級到至少 1.5。

儲存原始副本

預設情況下,在工作副本中儲存原始副本核取方塊已勾選。啟用此選項後,Subversion 會在工作副本內快取每個檔案的 BASE 修訂版本(原始副本)。這是為了讓差異和還原等操作可以離線工作,並且提交可以僅將檔案的修改版本部分傳送到儲存庫伺服器,而不是整個檔案。此設計最佳化了這些操作的速度和可用性,假設到儲存庫的網路連線可能是瓶頸,而本機儲存空間很便宜。對於 1.15 之前的版本,這是 Subversion 工作的唯一方式。

自 Subversion 1.15 起,您可以避免在工作副本中儲存每個檔案的副本。然後,Subversion 將僅在需要時下載原始副本("隨需")。如果您有非常大的檔案要處理,或者如果您有很多很少變更的二進位檔案,這可能會很有用。

若要避免為所有檔案儲存原始副本,請取消勾選在工作副本中儲存原始副本核取方塊。

重要事項

如果取消勾選在工作副本中儲存原始副本,則產生的工作副本將無法被 1.15 之前的 Subversion 用戶端使用。

TortoiseSVN 首頁