git返回到以前的提交

git返回到以前的提交,git,Git,我有以下情况。 我的项目工作的地方。 下一次发生了我无法解释的可怕事情。 所以 所以我做了git checkout goodcommit,我的项目又开始工作了!(呸!) 所以现在我想从这里开始,忘记那可怕的经历。我知道你可以恢复提交。那么,我如何才能将master放入goodcommit并从那里继续 (我读过非常复杂的答案,但我记得它非常简单:一个执行最后一次提交并恢复到上一次提交的单行命令,不像我读过的一系列复杂命令)您可以使用以下命令 git日志 它将为您提供以前提交的列表,从提交中复制长字

我有以下情况。 我的项目工作的地方。 下一次发生了我无法解释的可怕事情。 所以

所以我做了
git checkout goodcommit
,我的项目又开始工作了!(呸!)

所以现在我想从这里开始,忘记那可怕的经历。我知道你可以恢复提交。那么,我如何才能将master放入goodcommit并从那里继续


(我读过非常复杂的答案,但我记得它非常简单:一个执行最后一次提交并恢复到上一次提交的单行命令,不像我读过的一系列复杂命令)

您可以使用以下命令

git日志

它将为您提供以前提交的列表,从提交中复制长字符串,然后使用

$git重置--硬

示例:
git重置——硬6504ab87416af0571ae628511207813f20bb2d2c


就这样。

您可以使用以下命令

git日志

它将为您提供以前提交的列表,从提交中复制长字符串,然后使用

$git重置--硬

示例:
git重置——硬6504ab87416af0571ae628511207813f20bb2d2c


就这样。

您签出的好提交可能重复。现在在该点创建一个分支并继续,或者将旧分支重置为良好的提交。@evolutionxbox是的,我可以这样做,但会丢失主分支。那么需要恢复为什么会丢失主分支?自从那次失败后,你有没有做出过很多承诺?也请看。这个问题及其答案的目的是:“我们已经工作了一周,做出了几十次承诺,现在我们都需要回到一周前。”。对于您特定的简单情况,您只需要一个
git revert
git reset
。您可能已经签出了良好的提交。现在在该点创建一个分支并继续,或者将旧分支重置为良好的提交。@evolutionxbox是的,我可以这样做,但会丢失主分支。那么需要恢复为什么会丢失主分支?自从那次失败后,你有没有做出过很多承诺?也请看。这个问题及其答案的目的是:“我们已经工作了一周,做出了几十次承诺,现在我们都需要回到一周前。”。对于特定的简单情况,您只需要一个
git revert
git reset
。回答重复的问题不是最好的idea@Neeraj我必须复制整个数字吗?我以为只有前7天他可能没有找到想要的输出,或者他可能不清楚什么。我不确定。我总是复制整个数字,但你可以试试你自己的把戏,让我知道它的工作。@ Neeraj考虑使用“OP”,而不是“他”或“他”。回答重复的问题不是最好的。idea@Neeraj我必须复制整个数字吗?我以为只有前7天他可能没有找到想要的输出,或者他可能不清楚什么。我不确定。我总是复制整个数字,但你可以试试你自己的把戏,让我知道它的工作。@ Neeraj考虑使用“OP”,而不是“他”或“他”。
badcommit (HEAD->master) How horrible!
goodcommit Here it works
 goodcommit(HEAD) Here it works