【问题标题】:xcode9 "The current branch could not be determined"xcode9 "无法确定当前分支"
【发布时间】:2018-02-05 21:45:34
【问题描述】:

推送到 github 工作正常。我认为当我从 github 签出一个分支时,这个问题就开始了。我该如何解决?当我现在尝试推送到 github 时,我收到错误“无法确定当前分支。”

此外,我所有的本地提交都没有在我的任何一个本地分支中显示为 cmets。至少在 xcode 9 UI 中没有。我真的不知道如何使用本地 git 来检查这些东西,所以如果有人想向我指出也会有帮助的文档。

【问题讨论】:

  • 你能上传一个显示所有分支的源代码管理导航器的屏幕截图吗?这将显示 Xcode 认为当前分支的内容。您是否能够通过选择本地分支、右键单击并选择“结帐”来结帐?你是如何从 GitHub 签出一个分支的?使用所有这些信息更新您的问题将使人们更容易在这里为您提供帮助。

标签: xcode git github xcode9


【解决方案1】:

我遇到了这个问题,你需要在终端里弄脏:)

这个问题很可能是一个分离的 HEAD

此恢复基于您在头部分离时进行了更改并且您希望保留这些更改。

导航到您的项目目录并执行:git status

如果您有 HEAD 分离消息,则:

  • 提交更改:git commit -a -m "you commit comment here"
  • 创建本地临时分支:git branch temp
  • 查看上一个分支(你要使用的分支,即master):git checkout master
  • 现在合并您最近的更改(来自 temp 分支):git merge temp

一切都完成了,回到 Xcode 并回到你的分支上,一切都在你离开它的时候 :)

希望这会有所帮助。

【讨论】:

  • 谢谢,在结帐大师期间,我得到“pathspec 'master' 与 git 已知的任何文件都不匹配。”只需执行 git pull 即可解决我的问题
  • 这正是我所需要的,可能值得一提的是'temp'分支可能会在之后被删除。也这样做与 Xcode 打开不高兴 Xcode - 不得不关闭并重新打开
【解决方案2】:

在命令提示符中按顺序输入这些命令 (1-4):

  1. git commit -a -m "you commit message here"
  2. git 分支临时
  3. git checkout master
  4. git 临时合并

现在转到 Xcode 项目中的源代码管理导航器窗格并从“分支”选项卡中删除“临时”分支

Source Control navigator pane image

【讨论】:

    【解决方案3】:

    我在检查了以前的提交并找到了修复后遇到了同样的问题。

    在 Xcode 中,转到 Source Control > Clone > Clone 您尝试推送的存储库并保存它,然后删除您的旧 Xcode 项目并将其替换为克隆的项目,它应该可以正常工作。

    【讨论】:

      猜你喜欢
      • 2018-12-19
      • 1970-01-01
      • 2021-01-12
      • 1970-01-01
      • 2013-01-12
      • 2015-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多