当我执行git status
时,我得到了分支:
$ git status
On branch OfflineLoading
当我尝试git push
时,我得到:
$ git push origin OfflineLoading
fatal: OfflineLoading cannot be resolved to branch.
当我检查分支时,它不在那里:
$ git branch
branch1
branch2
branch3
branch4
我该怎么解决这个问题?
9条答案
按热度按时间ffscu2ro1#
常见的问题是大小写错误。我以前遇到过同样的问题。更好的方法是检查分支名称是什么:
你可以比较上面的分支,然后用你得到的名字推它。
或
3pvhb19x2#
除了凯尔的回答
如果你已经有了一个分支名称,比如“BugFix/item 001”,并将其推送到仓库中,然后你创建了另一个分支名称为“Bugfix/item 002”,即使你尝试使用正确的大小写推送分支,你仍然会得到相同的错误。我相信这是因为“BugFix”文件夹已经创建,未来的分支将使用相同的文件夹。
这仍然是一个套管错误,但真正的误导。
enxuqcxy3#
我的分支名称是功能/S212121_TestCase_review_Dashboard
当我尝试使用以下命令将代码推送到此分支功能/S212121_TestCase_review_Dashboard时:
然后我使用以下命令重命名了my分支:
之后,我已经使用以下命令来推动代码:
这对我很有效,我可以将代码推到分支。
b1zrtrql4#
这可能是因为您不在最新的master分支中。
为此,您可以在master分支上使用terminal命令进行检查:
或
检查了你的分支。
我创建了一个新分支
并使用以下命令从“无法解析”错误的旧分支推送到新分支:
这对我很有效。
wooyq4lh5#
checkout 到新的分支并再次推送它对我很有效。
git checkout -b 2020-08-05/OfflineLoading
git push
xcitsw886#
有时候,当你错误地 checkout 了一个错误的分支,在同一个错误的分支上做了一个提交,然后又做了一个推送时,就会发生这种情况。在我的例子中,我有一个名为questionbank的分支,犯了 checkout questionBank的错误(注意用大写字母'B'),然后我做了一个提交,git允许这一切直到我想做一个推送的时候。
解决方案是 checkout 正确的分支(我的例子是“questionbank”),对代码做一些修改(只是让git允许你提交),然后提交,推送就可以正常工作了。
xqnpmsa87#
当你的分支名称中有大写字母时就会发生这种情况,因为分支名称是区分大小写的,所以进入.git-〉refs-〉heads你就可以看到你的分支,去掉当前分支名称中的大写字母,就这样。
6l7fqoea8#
我不得不做一个小的改变,并再次添加我的提交,然后推,它的工作!
fae0ux8s9#
这不是一个理想的解决方案,但对我很有效:
结帐到不同的分支(例如:'branch2')&再次 checkout 回您的特性分支并尝试推送到远程。