返回到Android Studio中的上一次提交

时间:2018-12-22 08:50:00

标签: git android-studio version-control

因此,大约在四次提交之前,我对项目进行了重大更改。我了解到,我可以按照here的描述恢复到先前的状态,并且通过依次检出先前的提交(并在我的设备上对其进行测试),我已经确定了问题出在哪里。

现在,我想回到错误更改之前的状态,然后重新执行后续更改(当然,错误更改除外)。没有那么多,所以我可以手动进行操作,但是我的问题更多是关于如何处理git commit / push过程,以免弄乱我的仓库。

因此,一旦我签出了旧的提交(最后一个“好”的提交),我是否可以再进行进一步的代码更改,然后像往常一样提交并将其推送到我的存储库中,或者我现在是否在某种程度上我需要在主分支上合并回来的分支?

1 个答案:

答案 0 :(得分:2)

首先,这将是一个interactive rebase,您可以在其中重播提交,但删除不好的提交:

git rebase -i SHA1-before-bad-commit

第二,这将重写存储库的历史记录,这意味着之后需要git push --force。如果您是唯一在该存储库上工作的人,那没关系。

对于Android Studio,请参见 Rebasing in Android Studio 中的“ Gyula Juhász”:

  

在Android Studio中,可以相对容易地实现相同目的。 VCS / Git / Rebase是必须选择的菜单项,它将显示以下对话框:

https://gyulajuhasz.com/blog/blogcontent/hidden_content/uploads/2017/06/07-InteractiveRebase.png

  

Git RootBranch的含义很容易找出。
  有趣的部分是Onto字段。
  这必须是我们希望在交互式rebase中看到的第一个提交。
  在上面的示例中,该名称为HEAD~2
  点击Start rebasing之后,Studio将向我们展示另一个窗口,我们可以在其中确定提交的信念:

https://gyulajuhasz.com/blog/blogcontent/hidden_content/uploads/2017/06/08-InteractiveRebase2.png