1

我今天尝试在 (Tortoise)git 中使用补丁,显然是使用 git 后的第二次:它抱怨我已经在打补丁了。

所以没有多想,我点击了“中止”,因为我不再关心旧的补丁尝试,现在我过去四个星期的所有提交都消失了

发生了什么?git怎么能这样对我?;-)

(正如您在下面我自己的回答中看到的那样,至少我得到了我的提交。但是工作副本中的更改永远消失了,我理解它的方式。对于任何在某些地方单击“中止”的新用户来说都非常苛刻-以前的行动将同时在没有警告的情况下破坏当前的工作......我猜 git 喜欢偶尔做它的名字正义;-))

4

1 回答 1

4

Tortoisegit 运行了 a git am --abort,它git --reset hard在尝试第一个补丁之前(四周前)返回了状态,使此后的所有提交都不可见。早在 2009 年,在comp.version-control.git上就对此进行了讨论,当时他们正在考虑改变行为。在任何情况下,它都可以像这个 SO post--reset hard中描述的那样被撤消。

于 2011-04-07T14:45:19.360 回答