我有一个git仓库挂钩在windows上的phpstorm。我犯了一些变更集,然后将它们推送到我们的“中央回购”。在此之后,我做了更多的提交。我不再需要这些未被推到中央仓库的提交。我如何清理我的工作副本与中央回购(原产地)相同?Git恢复本地提交
回答
git reset --hard remotes/origin/HEAD
这对大师很有效,但在分支上有问题: – 2012-09-10 14:54:08
如果你觉得能肯定,并没有任何地方未提交变化:
git reset --hard origin/master
其中origin/master
的分支您已经被推到。
ref-log仍将包含回复的位,直到垃圾收集到期为止。要恢复的复归,
git reset --hard [email protected]{1}
git reset --hard remotes/origin/YOUR/BRANCH
比/HEAD
更好,因为你不会看到这一点:
$ git status
On branch MY/BRANCH
Your branch and 'origin/MY/BRANCH' have diverged,
and have 1 and 1 different commit each, respectively.
这是答案。 – mimoralea 2013-11-12 18:25:45
按我understading,你创造一些承诺,你已经在中央回购推动,之后你已经创建了更多的提交,但是这些都存在于本地。这些都没有推动中央回购。
删除/恢复本地提交;
git reset HEAD~{number_of_commit}
简单地说,你对你的命令提示符下打git log
,并得到提交的名单。看看,你现在创建了多少个提交以及需要还原多少个提交。
例如,你有你的remove.revert最后两犯然后打
git reset HEAD~2
有一个另一种方式来重置中央回购本地回购。但是,在这种情况下,您的本地提交将被删除,如果其他用户推送提交中央回购,那么您的回购将被更新。
命令是:
git reset --hard remotes/origin/HEAD
您可以还原本地其中N是用来还原提交的数目由
git reset HEAD~N
提交。举个例子:
,如果你要恢复单从本地提交,那么你可以使用
git reset HEAD~1
或 git的重置头^
- 1. 如何恢复本地提交git
- 2. Git + Intellij - 如何恢复本地提交?
- 3. 恢复git提交
- 4. 恢复到本地提交?
- 5. Git:恢复旧的提交
- 6. GIT:恢复上次提交?
- 7. git恢复已提交的提交
- 8. Git - 恢复从本地存储库提交的更改
- 9. git:从提交恢复文件
- 10. 恢复git中的多次提交
- 11. 恢复Git仓库/提交等
- 12. git恢复到某个提交
- 13. 恢复(没有分支)git提交
- 14. 如何恢复从git提交更改?
- 15. Git如何恢复旧提交
- 16. 从多个git rebases恢复“旧提交”
- 17. Git合并主无需恢复提交
- 18. 恢复丢失远程git提交
- 19. Git - 恢复丢失的提交
- 20. 如何恢复初始git提交?
- 21. 恢复git中的一系列提交
- 22. 如何在git中恢复提交?
- 23. 恢复Git中的几个提交
- 24. 本地提交后Git拉
- 25. Git - 幻影本地提交
- 26. Git:如何通过一次提交恢复一系列提交
- 27. 告诉Git提交是否合并/恢复提交
- 28. Git根据它恢复一个其他提交的提交
- 29. 从远程git存储库中恢复未提交的提交
- 30. 如何在git中恢复并提交previuos版本?
我知道这是怎么样的一个“我告诉过你” -comment,但这就是为什么Git用户强烈建议你在做任何工作之前创建一个新的本地分支的原因,因为那样你就可以切换回master,并从这里开始一个新分支,而不必担心删除先前的提交(你可能想在某些情况下稍后回来)。 – 2015-06-30 16:38:03