在Android Studio中分离的HEAD问题

时间:2016-10-09 00:01:28

标签: android git github head

我是Android Studio新手,并开始开发导航抽屉应用程序。

在提交中犯了错误后,我使用了Version控件的“Checkout Revision”,现在由于“Detached HEAD”,我再也无法将我的项目推送到Github。

如何解决此问题?我的应用程序在模拟器中运行得非常好。

由于

5 个答案:

答案 0 :(得分:2)

您可以转到VCS菜单,然后单击Git,分支,然后在Git分支对话框中单击本地分支下面的项目,然后签出分支,然后接受默认分支。 它会将您的项目连接到默认分支,您可以提交项目。

答案 1 :(得分:2)

如果您已经进行了很多更改,并且想在线提交并推送,但是突然之间出现了这个头疼的问题,那么您可以通过Android Studio为Git执行以下步骤:

  1. 转到VCS-> Git->分支...
  2. 点击+新建分支,只需输入任何临时名称即可。
  3. 然后将更改提交到新分支(尚未推送,因为它将在线创建新分支)。
  4. 再次转到VCS-> Git->分支...,现在选择具有分离头问题的上一个分支(本地),然后单击checkout分支。
  5. 再次转到VCS-> Git->分支...,现在选择新创建的分支(本地),然后选择合并到当前分支中。
  6. 成功合并后,请仔细检查您的代码是否为最新代码。现在,您可以推送分支(先前已发行),而不会出现头问题。如果此时单击“提交”,则由于您已合并了最新更改,因此没有任何要提交的内容。您需要做的就是在线推送。这样一来,您就可以避免自己在网上创建新分支只是为了解决此问题。
  7. 出于清洁目的,一旦您成功将分支推送到网上,只需再次选择新创建的分支(本地),然后单击“删除分支”即可。

答案 2 :(得分:0)

当您在Git中处于“分离头状态”时,这意味着您当前正在根据不在分支上的过去提交来查看历史记录。根据您的目标,需要做一些事情。

如果要在当前检出的版本中继续使用代码?如果是这样,您应该检查最近发布的提交,然后取消git revertgit reset的历史记录,无论哪个更适合您。

如果您想回到最近的提交并继续正常工作,git checkout <newest SHA>将完全正常工作。

答案 3 :(得分:0)

要摆脱Detached Head你需要知道为什么会出现这个问题。它显示Detached Head,因为您只需在本地提交项目就可以多次合并项目(或两次atlas)。 您需要做的是,每次合并项目时,只需将其提交到本地以及服务器分支。 这样可以解决您的问题。

答案 4 :(得分:0)

最简单的快速解决方案就是创建新分支并将当前版本推送到那里。 然而,这个解决方案并不是正确的。