意外回滚到 Git 中的上一次提交



我是 Git 的新手,不确定我做错了什么。例如,我沿着侧母版有很多分支 - 填充布局、数据上传、注销等。我搬到了一个新的分支,当我不得不改变我的布局时。所以我认为最好回到填充布局分支并在那里进行更改。所以我输入了git checkout filling-layout,这删除了我在布局中的一堆东西,并回到了以前的版本,我所有的更改都消失了。我以为我已经在所有更改后提交了填充布局,并将其上传到 github 和 heroku。

  • 知道我怎样才能把它找回来吗?
  • 还有谁能解释为什么会发生这种情况?
  • 当您必须进行一个小的更改时,最佳实践是什么可能会进入之前提交的分支吗?
  • 是创建一个新分支更好,还是您可以签出现有的分支分支进行更改。

尝试查看上一个分支。

这可能有效

git checkout -

它将尝试在当前分支之前签出您所在的分支(类似于 cd - )。

一旦你在 git 中提交了你的更改,就很难丢失它们。签出分支将更改工作树以匹配该分支中的内容,但切换回来会将工作树的状态恢复到前一个分支的状态。

查找以前提交的另一种方法是使用 git reflog 。这将列出 HEAD 的提交内容,并使用哈希值可以签出其中任何一个。

最新更新