代码之家  ›  专栏  ›  技术社区  ›  Justin Grant

在Git或TortoisGit中撤消还原

  •  4
  • Justin Grant  · 技术社区  · 14 年前

    有没有一个简单的方法来撤销龟怪的回复?

    这里有更多的信息:我刚提交了一个大的多文件签入,然后就决定在大文件签入之前提交一个单独的小签入,以便更容易地明天修改那个大签入。

    所以我打开了登录TortoiseGit,右键单击最后一次签入,然后选择“Revert”。这取消了更改并删除了我工作目录中的一堆文件。我真正想要的是“重置”(回滚签入并保持我的工作目录不变),而不是还原(在我的工作目录中创建一个“撤消签入”)。

    如何撤消还原?

    3 回复  |  直到 14 年前
        1
  •  5
  •   Jörg W Mittag    14 年前

    只是 git reset 不管怎样,达到你想要的程度。一 revert 没有什么特别的:它只是一个正常的提交,它所做的与另一个提交所做的完全相反。因为它只是一个普通的提交,所以它将像最初希望除去的其他提交一样被垃圾收集。

        2
  •  7
  •   Justin Grant    14 年前

    在更多的谷歌搜索之后,我找到了答案 this blog post :只需再次运行revert命令,它将撤消您的revert,而不会将您的历史记录与任何额外的提交混淆。好像我一开始就不会运行Revert。

    博客文章只提到了常规(命令行)git的这个技巧,但在tortoisegit中同样有效。特别好的是,我的工作目录中的其他更改不会被吹走——只有恢复被撤消。

    我将把自己生成的问题和一对留在这里,因为很难找到这个答案——希望能帮助其他人节省时间。

        3
  •  0
  •   rantler    12 年前

    我试图恢复我以前恢复的承诺,但它什么也没做。结果是“没有要提交的内容(工作目录清理)”。

    所做的工作是挑选以前恢复的承诺。它引入了我以前恢复的更改,并且没有改变我的工作目录。