【发布时间】:2014-04-17 09:43:15
【问题描述】:
最近在一个多人的项目中,提交了如下图所示。用红色标记,您可以看到带有“合并?”的描述/评论的提交。
此提交添加了许多文件并更改了许多其他文件,并且从未打算发生。
使用atlassian-sourcetree 我需要做什么才能将所有内容回滚到以蓝色突出显示的提交? (如屏幕截图所示,我落后了 8 个提交。)
【问题讨论】:
-
我不知道那个程序,但是在 git bash 你可以做
git reset --hard [the hash of the commit]。 -
是否“硬”删除在“错误提交”之后所做的所有其他提交?
-
是的,它会将所有内容更改回您提交提交后的状态。
-
除了垃圾回收之外什么都没有,实际上 removes 在 git 中提交,但是
git reset移动了一个分支指针,一旦提交“超出任何分支的尖端”,它们就会变成垃圾收集的成熟。 (分支的 reflog 将它们保留为默认过期时间 30 天,然后它们才真正被收割。)所以它们实际上已经消失了,但在紧急情况下你可以“取消”它们一个月左右的时间。 -
右键->反向提交->推送。 flummox-engineering.blogspot.com/2014/10/…
标签: atlassian-sourcetree git git-commit atlassian-sourcetree