2011-10-25 44 views
6

假設你有這樣的SVN倉庫結構庫中移動SVN項目不結賬

Root 
    Foo 
     Project1 
     Project2 
    Bar 
     Project3 

而你要到Project移到頂層:

Root 
    Foo 
     Project2 
    Bar 
     Project3 
    Project1 

開發商已經PROJECT1頂部他們的本地文件夾樹的級別,所以移動它們毫無意義,並且您希望在不需要開發人員進行結賬等的情況下完成此操作(這會迫使他們處理大量未版本控制的文件)。

這可能嗎?

我們使用的是Tortoise SVN,但如果需要使用svn.exe,我們沒有問題。

TIA

回答

9

最好的辦法是做一個SVN移動,將Project1移動到根目錄下,並在已經簽出的項目上執行SVN切換。

移動PROJECT1

svn move -m "message" http://<svn-url>/Foo/Project1 http://<svn-url>/Project1 

開關已經簽出庫在本地機器上

svn switch http://<svn-url>/Project1 

你可以使用TortoiseSVN做同樣的。

4

是的。使用資源庫瀏覽器移動項目,並要求開發人員切換到新位置(右鍵單擊,TortoiseSVN,Switch)。如果他們沒有任何未提交的文件,它們會更容易。在移動項目之前請他們提交。

+0

如果他們可以切換,那麼他們是否有未提交的更改應該沒有關係,但爲了安全起見,它總是值得提交(即使是新分支)。 – Rup

2

您可以使用svn mv命令。只需將源和目標指定爲URL即可。
使用svn switch將工作副本更新到不同的URL。