Git 重置后,恢复已提交但未推送的分支

Git 重置后,恢复已提交但未推送的分支,git,tortoisegit,Git,Tortoisegit,我从一个被推送的提交(称为提交a)开始了一个新的分支,然后在不推送的情况下对这个新分支进行了三次更改和提交(称为B、C和D)。然后,我发现了一个无法立即看到其来源的bug,我决定返回提交一份报告,看看该bug当时是否存在 我正在使用Ortoisegit,所以我找到了提交并右键单击它。我现在知道,暂时使用项目的正确命令应该是“切换/签出”,但我错误地选择了“将[branch name]重置为this” 谢天谢地,我进行了混合重置,而不是硬重置,这意味着我仍然在工作目录中的提交B、C和D中实现了更改

我从一个被推送的提交(称为提交a)开始了一个新的分支,然后在不推送的情况下对这个新分支进行了三次更改和提交(称为B、C和D)。然后,我发现了一个无法立即看到其来源的bug,我决定返回提交一份报告,看看该bug当时是否存在

我正在使用Ortoisegit,所以我找到了提交并右键单击它。我现在知道,暂时使用项目的正确命令应该是“切换/签出”,但我错误地选择了“将[branch name]重置为this”

谢天谢地,我进行了混合重置,而不是硬重置,这意味着我仍然在工作目录中的提交B、C和D中实现了更改。在意识到自己的错误后,为了安全起见,我承诺并推动了这些

在龟甲日志中,提交A、B和C不再可见。这并不是世界末日,因为我所取得的进步已经浓缩为我在重置后所做的一次承诺。但是,我仍然希望恢复这些提交,因为它们比大型提交更具增量,并且具有描述性消息。可能吗


我对git还相当陌生,到目前为止只使用过Ortoisegit界面。我更喜欢使用它的解决方案,但如果需要,我会使用命令行。非常感谢。

谈论命令,可以让你找到丢失的提交的SHA,然后你可以做一些类似于
git branch
谈论命令,可以让你找到丢失的提交的SHA,然后你可以做一些类似于
git branch
谈论命令的事情,将允许您查找丢失的提交的SHA,然后您可以执行类似于git branch的操作。谈到命令,将允许您查找丢失的提交的SHA,然后您可以执行类似于git branch使用“Reflog”完成的操作。要在Ortoisegit中执行此操作,请按住shift键并在目录中单击鼠标右键(您必须按住shift键才能获得扩展菜单)。转到TortoiseGit->Show Reflog,将显示所有以前的提交。从那里我可以转到我丢失的分行


感谢那些告诉我关于reflog的人。

是用“reflog”完成的。要在Ortoisegit中执行此操作,请按住shift键并在目录中单击鼠标右键(您必须按住shift键才能获得扩展菜单)。转到TortoiseGit->Show Reflog,将显示所有以前的提交。从那里我可以转到我丢失的分行


感谢那些告诉我关于reflog的人。

是用“reflog”完成的。要在Ortoisegit中执行此操作,请按住shift键并在目录中单击鼠标右键(您必须按住shift键才能获得扩展菜单)。转到TortoiseGit->Show Reflog,将显示所有以前的提交。从那里我可以转到我丢失的分行


感谢那些告诉我关于reflog的人。

是用“reflog”完成的。要在Ortoisegit中执行此操作,请按住shift键并在目录中单击鼠标右键(您必须按住shift键才能获得扩展菜单)。转到TortoiseGit->Show Reflog,将显示所有以前的提交。从那里我可以转到我丢失的分行

感谢那些告诉我reflog的人。

您的情况:

显示刷新日志

使D可见

  • 显示日志并创建分支
  • 直接创建分支
  • 切换/签出
  • (创建标记…)
  • 日志

    您的情况:

    显示刷新日志

    使D可见

  • 显示日志并创建分支
  • 直接创建分支
  • 切换/签出
  • (创建标记…)
  • 日志

    您的情况:

    显示刷新日志

    使D可见

  • 显示日志并创建分支
  • 直接创建分支
  • 切换/签出
  • (创建标记…)
  • 日志

    您的情况:

    显示刷新日志

    使D可见

  • 显示日志并创建分支
  • 直接创建分支
  • 切换/签出
  • (创建标记…)
  • 日志


    我只知道命令行,其中
    git reflog
    将获得“丢失”提交的SHA-1,然后您可以
    git reset
    或创建一个新分支来恢复它们。我只知道命令行,
    git reflog
    将获得“丢失”提交的SHA-1,然后你可以
    git reset
    或者创建一个新的分支来恢复它们。我只知道命令行,其中
    git reflog
    将获得“丢失”提交的SHA-1,然后你可以
    git reset
    或者创建一个新分支来恢复它们。我只知道命令行,其中
    git reflog
    将获得“迷路了“提交,然后您可以
    git reset
    或创建一个新分支来还原它们。啊,'reflog'。谷歌搜索了如何在陆龟中做到这一点。帮了大忙!。谢谢你啊,“reflog”。谷歌搜索了如何在陆龟中做到这一点。帮了大忙!。谢谢你啊,“reflog”。谷歌搜索了如何在陆龟中做到这一点。帮了大忙!。谢谢你啊,“reflog”。谷歌搜索了如何在陆龟中做到这一点。帮了大忙!。多谢各位