Git回滚到上一个结帐

时间:2012-04-23 06:46:59

标签: git

我从github克隆了一些项目到我的项目,一切正常,我很高兴。

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

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

我怎么知道它并回滚到以前的稳定(对我来说)项目结账?我理解以更正确的方式修复与上游回购的冲突,但有时我只需要回滚到以前的版本,以便有时间解决问题。

3 个答案:

答案 0 :(得分:2)

如果你有一个命令/脚本,你可以执行,这将说明一个“稳定点”(即一些工作,而不是当前它不工作的状态),那么你可以考虑一个 {{ 1}} 命令 请参阅“How to use git bisect?”。

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

答案 1 :(得分:1)

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

答案 2 :(得分:0)

你已经提交了合并吗?如果没有,只需git reset --hard,您就会在发出git pull之前回到州。否则,git reset --hard HEAD^(如果合并是最后一次提交)就可以了,因为git默认会选择合并提交的第一个父级,即你的分支。如果有疑问,您可以随时使用,例如gitk检查情况并找到分支上的最后一次提交,复制其SHA1哈希值并恢复为该值。

相关问题