要取得工作副本,您需要從儲存庫執行檢出。
在 Windows 檔案總管中選擇您想要放置工作副本的目錄。按一下滑鼠右鍵以彈出內容選單,然後選擇 → 命令,這會開啟以下對話方塊
如果您輸入的資料夾名稱尚不存在,則會建立一個具有該名稱的目錄。
在預設設定中,「檢出」選單項目並未位於 TortoiseSVN 子選單中,而是顯示在檔案總管選單的最上方。不在子選單中的 TortoiseSVN 命令會加上 SVN
前綴:
如果專案包含對外部專案的參考,而您不想同時檢出這些專案,請使用省略外部參考核取方塊。
如果勾選了省略外部參考,或者您希望增加深度值,則您必須使用 → 而不是 → 來執行工作副本的更新。標準更新將包含所有外部參考並保持現有的深度。
建議您僅檢出目錄樹的 trunk
部分或更低層級。如果您在 URL 中指定目錄樹的父路徑,那麼您可能會因為取得整個儲存庫樹的副本,包括專案的每個分支和標籤而導致硬碟空間不足!
有時您可能想要建立一個不包含任何 .svn
目錄的本機副本,例如,建立原始碼的壓縮 tarball 檔案。請閱讀名為「匯出 Subversion 工作副本」的章節,以了解如何執行此操作。
您可以選擇想要檢出的深度,這讓您可以指定遞迴到子資料夾的深度。如果您只需要大型樹狀結構的幾個部分,您可以僅檢出頂層資料夾,然後遞迴更新選定的資料夾。
檢出整個樹狀結構,包括所有子資料夾和子資料夾。
檢出指定的目錄,包括所有檔案和子資料夾,但不填入子資料夾。
檢出指定的目錄,包括所有檔案,但不檢出任何子資料夾。
僅檢出目錄。不使用檔案或子資料夾填入它。
保留工作副本中指定的深度。此選項未在檢出對話方塊中使用,但它是所有其他具有深度設定的對話方塊中的預設值。
用於在資料夾已填入後減少工作副本深度。此選項僅在更新至特定版本對話方塊中可用。
若要輕鬆選取您要檢出的項目,並強制產生的工作副本僅保留這些項目,請按一下稀疏檢出
。此類工作副本的更新將不會提取遺失的檔案和資料夾,而只會更新您已在工作副本中擁有的內容。
如果您檢出稀疏工作副本(即,透過為檢出深度選擇完整遞迴
以外的選項),您可以稍後使用以下方法之一輕鬆新增或移除子資料夾。
按一下滑鼠右鍵已檢出的資料夾,然後使用 → 並選取 。這會開啟與原始檢出中可用的相同對話方塊,並允許您選取或取消選取要包含在檢出中的項目。此方法非常靈活,但可能很慢,因為資料夾中的每個項目都會個別更新。
在檢查修改對話方塊中,首先Shift+按一下 按鈕。對話方塊將顯示儲存庫中但您尚未檢出的所有檔案和資料夾,顯示為 遠端新增
。按一下滑鼠右鍵您想要新增至工作副本的資料夾,然後使用 → 。
當您只想檢出大型樹狀結構的部分內容,但又希望方便地更新單個工作副本時,此功能非常有用。假設您有一個大型樹狀結構,其中包含子資料夾 Project01
到 Project99
,而您只想檢出 Project03
、Project25
和 Project76/SubProj
。請使用以下步驟
檢出父資料夾,深度為「僅此項目」。您現在有一個空的頂層資料夾。
選取新的資料夾,並使用
→ 以顯示儲存庫內容。在 Project03
上按一下滑鼠右鍵,然後 → 。保持預設設定,然後按一下 。您現在已完全填入該資料夾。
對 Project25
重複相同的步驟。
導覽至 Project76/SubProj
並執行相同的操作。這次請注意,Project76
資料夾除了 SubProj
之外沒有任何內容,而 SubProj
本身已完全填入。Subversion 已為您建立中間資料夾,但未填入它們。
一旦您將工作副本檢出到特定深度,您可以稍後使用使深度固定核取方塊。
→ 來變更該深度,以取得更多或更少的內容。在該對話方塊中,請務必勾選1.5 之前的伺服器不理解工作副本深度請求,因此它們無法始終有效地處理請求。該命令仍然有效,但較舊的伺服器可能會傳送所有資料,讓用戶端篩選出不需要的內容,這可能意味著大量的網路流量。如果可能,您應該將伺服器升級到至少 1.5。
預設情況下,在工作副本中儲存原始副本核取方塊已勾選。啟用此選項後,Subversion 會在工作副本內快取每個檔案的 BASE
修訂版本(原始副本
)。這是為了讓差異和還原等操作可以離線工作,並且提交可以僅將檔案的修改版本部分傳送到儲存庫伺服器,而不是整個檔案。此設計最佳化了這些操作的速度和可用性,假設到儲存庫的網路連線可能是瓶頸,而本機儲存空間很便宜。對於 1.15 之前的版本,這是 Subversion 工作的唯一方式。
自 Subversion 1.15 起,您可以避免在工作副本中儲存每個檔案的副本。然後,Subversion 將僅在需要時下載原始副本("隨需
")。如果您有非常大的檔案要處理,或者如果您有很多很少變更的二進位檔案,這可能會很有用。
若要避免為所有檔案儲存原始副本,請取消勾選在工作副本中儲存原始副本核取方塊。
如果取消勾選在工作副本中儲存原始副本,則產生的工作副本將無法被 1.15 之前的 Subversion 用戶端使用。