2012-01-05 79 views
6

場景:庫結構從/主幹改變//PROJECTNAME /主幹/和本地副本是過時的,有很多的修改。轉換工作副本的目錄,而無需更新

問題:如何在不更新文件的情況下更新工作副本目錄路徑。

通常情況下,同一個存儲庫中的目錄更改解決方案將使用svn switch命令。問題在於它在執行時執行更新,工作副本已過時,並且有許多本地修改會與當前修訂相沖突。

我在找的是與--relocate交換機相同的行爲,它更新路徑但不更新文件。這樣我就可以重新檢查每個文件的狀態和差異,同時保持本地副本的功能(這是我主要關心的問題)。

switch --help提供了一些處理衝突的參數,但我找不到任何可以完全停止更新的參數。

任何想法?非常感謝。

+0

你將不得不面對在一段時間的衝突。而你越等待,你就會發生衝突的越多,解決它們的難度就越大。我會盡快切換。 – 2012-01-05 22:18:42

+0

我同意,這種特殊情況下的問題是,我們使用存儲庫上的文件作爲模型應用程序,並在各個位置使用本地更改進行復制。存儲庫中的結構更改會影響所有位置,因此需要將衝突最小化。 – Lando 2012-01-05 22:32:21

回答

9

這個特殊情況的解決方案比我想象的要簡單。

svn switch執行更新在默認情況下,庫中的最新版本,指定的工作副本的基礎版本(從庫中獲得最後一次修訂)最左側的文件不變。

我通過發出svn info命令得到了我的工作拷貝(294)的基礎版本。

然後,只需發出帶有BASE修訂版的開關命令,即可更新存儲庫路徑,使大部分文件保持不變。

svn switch -r 294 /projectName/trunk/

+1

這種方法並沒有讓我的文件不受影響。它實際上切換到該位置,並使用任何特定修訂和位置更新了我的工作空間 – supertonsky 2017-08-29 04:04:43

相關問題