我从Bitbucket或Github迁移了我的回购协议。我认为这无关紧要,但这是唯一不同的地方。有一段时间,我安装了两个遥控器:
origin: bitbucket
github: github
然后我将两者都删除,并将原点指向github:
git remote remove origin
git remote remove github
git remote add origin https://github....
开发分公司测试推送:
git push origin develop
一切都是最新的,好的,很好。
按照常规为某些工作创建新分支:
git checkout -b Feature/Name
更新一两个文件。尝试推送至远程:
git push origin Feature/Name
这会导致错误:
致命:无法将功能/名称解析为分支
在线搜索此问题,找到一些关于确保HEAD正确的信息,其他关于确保我的分支名称大小写正确的信息(尽管此时远程上还不存在分支)。无法解析。
运行此命令:
git push --all -u
这使我的功能/名称分支到github,但仍然看到与之前相同的行为:
git push origin develop
git push origin Feature/Name
第一个工作,而第二个抛出相同的错误。为什么?
Git将允许您使用不同的大小写签出当前分支,并且它将无法在远程上找到引用。
刚刚发现了艰难的道路。
根据我自己的测试和OP的评论,我认为在某个时候他们在分支名称的大小写上出错了。
首先,我相信OP是在OS X或Windows等不区分大小写的操作系统上。然后他们做了这样的事情......
$ git checkout -b SQLMigration/ReportFixes
Switched to a new branch 'SQLMigration/ReportFixes'
$ git push origin SqlMigration/ReportFixes
fatal: SqlMigration/ReportFixes cannot be resolved to branch.
注意外壳差异。还请注意,如果您只是键入名称,则错误会非常不同。
$ git push origin SQLMigration/ReportFixme
error: src refspec SQLMigration/ReportFixme does not match any.
error: failed to push some refs to 'git@github.com:schwern/testing123.git'
由于Github使用文件系统存储分支名称,因此它尝试打开。git/refs/heads/SqlMigration/ReportFixes
。因为文件系统不区分大小写,所以它成功地打开了。git/refs/heads/SqlMigration/ReportFixes,但当它尝试区分大小写比较分支名称时,会感到困惑,因为它们不匹配。
他们是如何进入这样一种状态的,即本地分支是SQL迁移/报告修复
,远程分支是Sql迁移/报告修复
,我不确定。我不相信Github弄乱了远程分支名称。最简单的解释是其他具有推送访问权限的人更改了远程分支名称。否则,在某个时候他们做了一些事情,设法创建了带有打字错误的远程。如果他们检查他们的shell历史记录,也许使用历史记录|grep-i sql迁移/报告修复
,他们可能会找到一个错误输入大小写的命令。
我也有这个问题,这让我抓狂。我有一些类似的功能/名称,但git branch-a向我显示了功能/名称。重命名分支、删除并重新创建它,都不起作用。最终解决方法:
进入。git/refs/heads
您将看到一个功能文件夹。将其重命名为功能。
当我做一个,我得到我的分支: 当我尝试推送git时,我得到: 当我检查分支时,它不在那里: 我该如何解决这个问题?
我是gitlab的新手,这是我第一次使用ssh。我可以生成ssh密钥并将其添加到我的帐户设置中。我可以通过ssh克隆repo,我可以签出到我的分支,但我仍然不能做的是将我的更改推送到分支。以下是我在尝试推送ssh密钥之前(按照此处的说明)生成ssh密钥的步骤: PS.我正在使用Windows 10。 在终端上(作为管理员),键入:. 按获取ssh键的默认路径 提供密码 在中创建配置文件。这是我在配
当我尝试向github推送一个新的远程分支时,我一直遇到同样的问题,我不知道如何处理它。事情就是这样: 我创建了一个分支,例如 对那个分支进行更改 提交这些更改 然后我签出到我的开发分支(如果由于这样或那样的原因我当时无法推送) 当我返回该分支我尝试推送 我收到消息: 要推送当前分支并将远程设置为上游,请使用 致命:功能/5110无法解析为分支。 我发现解决这个问题的唯一方法是删除我的分支,然后重
问题内容: 有什么方法可以将成功构建的功能分支推送到另一个分支? 我想要这样的东西: Git存储库(Gitorious / GitHub等)。分行: 掌握(当前项目的代码) 质量保证(代码等待质量检查的分支机构) 功能分支(许多远程分支,开发人员可以在其中开发其功能) 开发人员应仅具有对母版的读取访问权限,并且对其功能分支进行读/写QA读/写质量保证分支TeamCity-读/写母版,质量保证,仅对
每次我将一个分支合并回我的主分支时,我就不能再推到原点。我收到消息 我做了一个简单的测试更改: 创建了一个新的分支 做了一个更改到测试分支和提交 签出回到主 合并测试分支 合并似乎进行得很顺利,但现在当我使用Git状态时,主分支并没有告诉我它在源代码之前。当我试着推到原始主机时,我得到了上面的信息。 有人知道是什么导致了这个问题吗?
我已经在我的本地Gitlab服务器上创建了一个远程存储库,我试图推送本地内容,但它要求我提供通行证,但现在是为我的用户 我试过使用我的用户通行证和根通行证,但不起作用,通行证要求什么??