Git回滚到之前的结帐

我从github克隆了一些项目,到我的项目,所有的作品都很好,我很高兴。

但是在一些git pulls之后,我在我的项目中收到了上游项目的新提交中的一些冲突。

我想要回滚到之前的结帐,但我不知道我的项目中以前有哪个稳定的结帐。

我如何知道它并回滚到以前的稳定(对我来说)项目结账? 我明白,从视角来看,更正确的方法可以解决与上游回购问题的冲突,但有时我只需要回滚到以前的版本,以获得解决问题的时间。


如果你有一个可以执行的命令/脚本,并且可以说明一个“稳定点”(即可以工作,而不是当前状态),那么你可以考虑一个git bisect命令。
请参阅“如何使用git bisect?”。

这可以帮助你隔离“正在工作”的最后一次提交。


git reflog应该告诉你操作的顺序,最近的第一个。 查找在第一次拉/合之前操作的提交ID; checkoutreset --hard很难。


你已经承诺合并? 如果没有,只需将git reset --hard ,然后在发出git pull之前回到状态。 否则, git reset --hard HEAD^ (如果合并是最后一次提交)会执行这个技巧,因为默认情况下git会始终选择合并提交的第一个父代,这是您的分支。 如果有疑问,你总是可以使用例如gitk来检查情况并找到你的分支上的最后一个提交,复制它的SHA1哈希并恢复到那个。

链接地址: http://www.djcxy.com/p/94783.html

上一篇: Git rollback to previous checkout

下一篇: Sourcetree: how to revert a git pull