我创建了一个功能分支,并在那里多次提交。我需要恢复一些文件,好像我从未在我的功能分支中触及它们。换句话说,我不想让他们重新融合。
我该怎么做?
答案 0 :(得分:3)
如果我理解正确,你的情况如下:
您已经创建了一个精选分支:
$ svn cp ^/trunk/ ^/branches/feature
你已经在^/branches/feature
做了一些工作并且已经提交了。
$ ... work, work, work ...
$ svn ci
现在您要撤消一些更改
所以,做一个反向合并
首先,使用svn log
检查要撤消的修订:
In your featured branch working copy:
$ svn log -v
-----------------------------------
r234 ...
Changed paths:
M /branches/featured/file.c
Implemented a feature
-----------------------------------
反向合并特定修订版。请注意修订前的-
:
$ svn merge -c -234 .
重新融入后备箱:
In the trunk working copy:
$ svn merge --reintegrate ^/branches/feature .
答案 1 :(得分:0)
如果从一个分支到另一个分支进行合并,则只会合并第一个分支上发生的差异。如果你没有触摸过的文件,那么它们就没有差异,所以重新融合的部分不会触及这些文件。所以不,你不必还原任何东西。执行revert
会恢复您在客户端上的工作副本中所做的更改,而与分支或存储库无关。