2011-09-16 49 views
1

我有以下情況。如何「撤消」合併在svn中設置的特定更改

1)獲取回購的本地副本。

2)撤銷我不想要的更改集(修訂版120)。 svn merge -c -120。

3)做我的工作修改文件。

4)現在我想「撤銷」我在(2)中所做的操作,而無需從(3)中撤消所有更改。這可能與svn?

順便說一下,我使用Subversion版本1.5.2,以防萬一。

回答

0

您可以在(2)中創建的版本上調用svn merge -c -X。如果(3)你的意思是你有未提交工作樹改變,你可以做這樣的事情:

svn diff >saved.diff 
svn revert -R . 
svn merge -c -X 
patch -p0 <saved.diff 
+0

是的,我的意思是我的工作樹中沒有提交的變化。 –

+0

不會saved.diff包含我想要的更改和步驟(2)的更改嗎?因此,我認爲這4條命令最終會讓我回到原來的位置。 –

+0

你說得對,我還沒意識到你還沒有合併過。 –

1

你可以svn merge -c 120。這將完全撤銷svn merge -c -120,在(2)中完成。

+0

這就是我的想法。但事實並非如此。事實上,它似乎什麼都不做。 (順便說一句,我使用Subversion命令行客戶端,版本1.5.2,不知道這是否重要...) –