svn 恢复存储库中的更改但不恢复本地更改

svn 恢复存储库中的更改但不恢复本地更改

我在这里寻找的是如何操作 Svn 来有效地回滚我之前对存储库的提交而不影响我在本地所做的更改。

假设我这样做:

$ svn ci abc.java -m "Updated abc"
Sending        abc.java
Transmitting file data .
Commited revision 123

然后我意识到我暂时还不想在存储库上进行更新,但想保留我在本地所做的更改。我希望我的本地文件保持不变,但存储库中的文件恢复到修订版本 122。

我只找到了一种方法来做到这一点,那就是使用反向合并:

$ svn merge -c -123 abc.java
--- Reverse-merging r123 into 'integer.c':
U    integer.c
$ svn commit -m "Undoing last change: rev 123."
Sending        abc.java
Transmitting file data .
Committed revision 124.

不幸的是,这意味着我必须在进行反向合并之前将本地文件复制到其他地方,然后在提交后将本地文件复制回来。

我想知道是否有一种不那么迂回的方法来做到这一点,其中操作只在存储库上进行?

谢谢

答案1

1.签出新的 repo 副本

2.跑步:

svn merge -rHEAD:XXXX

(XXXX 是您刚刚提交的修订版之前的修订版)

3.犯罪

4.删除新签出的仓库

相关内容