Git新手。在git提交时犯了一个大错误,最终导致了一个更旧的提交

Git新手。在git提交时犯了一个大错误,最终导致了一个更旧的提交,git,Git,我是Git的新手,犯了一个很大的错误。吉特一直用他的话提醒我 git-拒绝主机->主机非快进 但是,我仍然承诺使用: -强迫 这是灾难性的,整个项目又回到了大约一周前的阶段。我丢了这么多零钱。我似乎被推回到了早些时候的承诺。有没有什么方法可以让我回到我的一个新提交?因为我已经做了大量的改变,需要让他们回来 使用git reflog命令。reflog命令将为您提供分支头上发生的事件的良好历史记录。运行它,然后找到指向要返回的状态的行 找到提交后,将分支重置为指向特定提交 git reset --h

我是Git的新手,犯了一个很大的错误。吉特一直用他的话提醒我

git-拒绝主机->主机非快进

但是,我仍然承诺使用:

-强迫

这是灾难性的,整个项目又回到了大约一周前的阶段。我丢了这么多零钱。我似乎被推回到了早些时候的承诺。有没有什么方法可以让我回到我的一个新提交?因为我已经做了大量的改变,需要让他们回来

使用git reflog命令。reflog命令将为您提供分支头上发生的事件的良好历史记录。运行它,然后找到指向要返回的状态的行

找到提交后,将分支重置为指向特定提交

git reset --hard <commit_id>
-hard选项将当前分支的头设置回您指定的提交。

使用git reflog命令。reflog命令将为您提供分支头上发生的事件的良好历史记录。运行它,然后找到指向要返回的状态的行

找到提交后,将分支重置为指向特定提交

git reset --hard <commit_id>

-hard选项将当前分支的头设置回您指定的提交。

从您的问题中可以看出您执行了git强制。这很糟糕。 我不确定这是否有效,但值得一试。按照建议的顺序进行,仅当一个建议不起作用时,跳到下一个:

尝试使用git revert{commit_hash}还原强制到主分支上的提交散列。如果您觉得您的更改已经恢复,那么再执行一次git提交和git推送。 如果上述操作不起作用,并且这是您最后一次提交,您可以尝试使用git checkout HEAD~1返回一次提交。这将使头部向后移动一次。要知道需要返回多少次提交,最简单的方法是使用git reflog,看看哪次提交是最后一次稳定的提交。如果这个状态是您认为正确的,那么执行git提交和git推送。
请不要忽略git警告。根据我的经验,git只警告你绝对必要的东西。

从你的问题来看,你似乎做了一个git推力。这很糟糕。 我不确定这是否有效,但值得一试。按照建议的顺序进行,仅当一个建议不起作用时,跳到下一个:

尝试使用git revert{commit_hash}还原强制到主分支上的提交散列。如果您觉得您的更改已经恢复,那么再执行一次git提交和git推送。 如果上述操作不起作用,并且这是您最后一次提交,您可以尝试使用git checkout HEAD~1返回一次提交。这将使头部向后移动一次。要知道需要返回多少次提交,最简单的方法是使用git reflog,看看哪次提交是最后一次稳定的提交。如果这个状态是您认为正确的,那么执行git提交和git推送。
请不要忽略git警告。根据我的经验,git只会警告您绝对必要的内容。

1.git revert{commit\u hash}会还原在特定提交中所做的更改。但那不是他想要的。@KarthikBose我有这个疑问,但我觉得值得一试。git checkout HEAD~1将签出当前提交的父级,而不是上一次提交。1.git revert{commit_hash}将还原在特定提交中所做的更改。但那不是他想要的。@KarthikBose我有这个疑问,但我觉得值得一试。git checkout HEAD~1将签出当前提交的父级,而不是上一次提交的父级。@欢迎您。请接受答案单击答案旁边的复选标记,它会让每个人都知道您的问题已经解决。@RamarioDepass欢迎您。请接受答案点击答案旁边的复选标记,它让每个人都知道你的问题已经解决。