2014-11-14 79 views
0

是否有可能將SVN工作副本恢復爲稀疏結帳?將SVN回購還原爲稀疏結帳(undo'svn up --set-depth infinity')?

我有一個非常大的存儲庫的稀疏結帳。我在其中一個子文件夾上運行了svn up --set-depth infinity,但這導致檢出許多我不想要的文件。如果我可以放棄時間,我會在子文件夾中輸入svn up --set-depth immediates,然後只在我關心的子文件夾(而不是整個子樹)中遞歸地執行此操作。

我沒有變化我需要保留在這個子樹中,所以我很樂意做相當破壞性的事情來恢復它。但是,我確實在不同的子樹中進行了更改,所以我寧願不要扔掉整個工作副本。有沒有一種方法(或黑客)我可以刪除子樹,然後告訴SVN只更新到深度immediates

+1

在子文件夾上做另一個'svn up --set-depth immediates'有什麼問題? – Ben 2014-11-14 15:25:48

+0

@Ben - 我認爲這是不可能的,但我不知道爲什麼(也可能是錯的)。我剛剛啓動了這個命令,並會看到會發生什麼(現在它只是掛着沒有輸出;我不知道我要等多久才能看到它是否正常工作,但是最初的'--set-depth infinity '更新花費了將近3個小時,所以可能需要一段時間 – sam 2014-11-14 16:03:13

+0

@Ben - 是的,這是有效的,謝謝,我實際上取消了我正在運行的命令並重新嘗試在樹的下方(所以它更快完成可以檢查它是否正在工作) - 之前該命令看起來已被掛起。 – sam 2014-11-14 17:47:05

回答

1

根據@ Ben的評論,您可以通過運行svn up --set-depth immediates來取消此操作。

請注意,如果結帳非常大,這可能需要很長時間!

[已更新:]命令完成後,您需要刪除所有已簽出的額外文件(--set-depth不會刪除它們)。