2009-11-03 85 views

回答

17

其實,有一個「導出」選項。如果您右鍵單擊並拖放安裝了Tortoise的文件夾,您將看到導出選項。

+1

+1 ...這是最簡單的方法。 – 2009-11-03 21:10:19

+0

很酷,不知道這個,+1。 – 2009-11-03 22:45:45

+0

+1 - 我也會這樣做。 – 2009-11-04 03:10:44

1

您需要刪除每個文件夾下的「隱藏」.svn目錄(當然,在複製目錄後)。

7

你可能只想做一個svn導出(它在烏龜svn菜單中)的文件夾。否則,你將不得不進入和刪除這些文件夾所具有的所有小.svn文件夾,這些文件夾可以讓他們知道它們是svn文件夾以及它們指向的位置。

導出工作就像一個結帳,除了它「脫離」顛覆,只是給你的內容。

2

它被稱爲出口commad。它會要求您提供放置副本的目錄。如果你選擇與你的svn目錄相同的目錄,它實際上會一起刪除svn數據。

6

IN SHORT: 使用「導出」功能獲取svn目錄和文件的副本。 或 複製文件夾,然後從中手動刪除svn隱藏文件夾。

說明: 當你做一個「簽出」時,烏龜會在每個簽出的文件夾中放入一個隱藏文件夾,在其中保留文件夾內容的「基本版本」。這樣它可以檢測到您在源代碼管理下對文件所做的更改。要查看此隱藏文件夾,您需要設置文件資源管理器以顯示隱藏的文件和文件夾。此外,這種方式烏龜可以顯示你的狀態圖標。

還有另一種方法可以從源代碼管理存儲庫中獲取文件。這是「導出」功能。使用此選項,您可以從服務器獲取最新版本的文件,但無需隱藏文件夾。不過,請謹慎對待您通過「導出」無法更改導出的文件。 (但你可以添加它們作爲新文件,如果需要的話)

如果你只是想複製文件(但放棄SVN跟蹤工具),我會建議你使用「導出」功能。但是,如果您不再與svn服務器建立連接,您最好還是手動刪除複製目錄中的所有隱藏文件夾。

0

如果你想剛剛從一個大項目中刪除.svn目錄,你可以用我的劇本,我的CMD行腳本基於John Galloway's資源管理器擴展:

 
:: unsvn 1.0 - By Casey Dunham (http://www.caseydunham.net) 
:: 
:: usage - unsvn folder 
:: 
:: Deletes all .svn folders under the specified folder. 
:: 
:: 
:: Based on a Windows command shell extension by John Galloway 
:: at http://weblogs.asp.net/jgalloway/archive/2007/02/24/shell-command-remove-svn-folders.aspx 
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
@echo off 
if /i "%1" == "" goto usage 

for /r %1 %%f in (.svn) do (
    if exist %%f (
     echo removing %%f 
     rd /s /q %%f 
    ) else (
     echo.File %%f not found! 
     goto done 
     ) 
    ) 

:usage 
echo unsvn 1.0 
echo usage: unsvn folder 
echo. 
echo Deletes all .svn folders and files below the specified folder. 

:done 

只需保存以上爲unsvn .bat,把它放在你的路徑中,並將它從你想要從其中刪除所有.svn文件夾的頂級文件夾傳遞給它。

+0

只是注意到這只是檢查.svn文件夾。我相信你可以設置選項來使用_svn文件夾,所以你可能想修改if語句來檢查它。 – Casey 2009-11-04 19:59:27