【问题标题】:Undoing a commit in TortoiseSVN在 TortoiseSVN 中撤销提交
【发布时间】:2010-09-19 21:56:35
【问题描述】:

我不小心提交了一堆文件(不同文件夹中的数十个文件)。在无需从我的工作目录中删除文件的情况下,“撤消”该提交的最简单、最干净(也是最安全!)的方法是什么?

【问题讨论】:

    标签: svn tortoisesvn undo


    【解决方案1】:

    转到显示日志屏幕,选择要撤消的修订,右键单击它并选择Revert changes from this revision,这将执行reverse-merge .

    【讨论】:

    【解决方案2】:

    您可能需要使用命令行,但您可以使用 SVN 合并命令并反向指定修订以有效恢复提交。假设你的错误提交是 r1123,你会这样做:

    svn merge -r1123:1122 <url of your working copy>
    

    【讨论】:

    • 当我这样做时没有任何变化: svn merge -r 1880:1879 server/myproject/branches/problem42 我已经尝试过使用这样的空间“-r 1880:1879”和没有这样的空间“-r1880: 1879 年”。如果我之后运行“svn st”,那么什么都没有改变。
    【解决方案3】:

    您可以将工作副本恢复到提交之前的修订版。恢复工作副本后,只需提交更改即可有效地回滚意外提交。

    在像你这样的情况下,我可能会检查我想要回滚到新工作副本的修订,然后将工作副本提交给头修订。

    【讨论】:

    • 这不会告诉您您的修订版已过时并要求您在提交之前进行更新吗?我认为您需要合并先前的修订,而不仅仅是更新到旧版本。
    • 此外,此策略假定错误提交是前一个。您可能想要撤消一些不久前发生的更改,而不是全部撤消。
    猜你喜欢
    • 2011-03-26
    • 2014-03-13
    • 1970-01-01
    • 2016-10-24
    • 2011-04-11
    • 2011-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多