【发布时间】:2011-03-06 12:14:47
【问题描述】:
我不小心对存储库进行了一些未完成的更改。我不想丢失我的本地更改,但我想将存储库中的文件恢复到我提交更改之前的位置。
【问题讨论】:
标签: svn repository commit revert
我不小心对存储库进行了一些未完成的更改。我不想丢失我的本地更改,但我想将存储库中的文件恢复到我提交更改之前的位置。
【问题讨论】:
标签: svn repository commit revert
无需编辑上游存储库的历史记录(you can do,在这种情况下不应该这样做),以下是实现此目的的最简单方法:
假设意外提交是$REV(您可以使用svnversion 或svn log 找出答案)。然后执行以下操作:
svn merge -c -$REV .
svn ci -m "Revert r$REV"
最后一条命令的最后一行给出了新的修订号:
Committed revision $NEW_REV.
使用下面的内容在本地恢复您的更改:
svn up # Necessary if your repository has mixed revisions (e.g. due to externals).
svn merge -c $NEW_REV .
(通常 $NEW_REV 应该只是 $REV + 1。)
完成。
【讨论】:
在 SVN 中使用“switch”命令。这很容易,而且值得了解。
【讨论】:
不确定是否有执行此操作的功能。但我会做的是
【讨论】:
我建议将您提交的特定文件保存到外部文件夹。然后还原存储库中的文件并提交。从而导致您提交之前的状态。然后获取您保存的文件并替换它们,以便您的副本具有您的本地更改。
【讨论】:
唯一的选择是备份您的更改,然后在服务器上进行反向合并,然后将您的更改复制回您的工作副本。
【讨论】: