【发布时间】:2019-05-12 13:46:28
【问题描述】:
我遇到了一个“奇怪”的问题,可能是因为我做错了什么或忘记做其他事情,但现在每次我运行以下命令时:
git checkout master && git pull origin master && git fetch -p
我收到以下错误:
Already on 'master'
From ssh://reponame
* branch master -> FETCH_HEAD
Already up to date.
fatal: Couldn't find remote ref refs/heads/global/CDP-5353_fix
我尝试了以下方法(我从here 得到的):
E:\repo (master -> origin)
λ git branch -r | grep CDP-5353_fix
E:\repo (master -> origin)
λ git branch | grep CDP-5353_fix
分支CDP-5353_fix 在本地和/或远程不存在。
E:\repo (master -> origin)
λ git branch --unset-upstream
E:\repo (master -> origin)
λ git checkout master && git pull origin master && git fetch -p
Already on 'master'
From ssh://reponame
* branch master -> FETCH_HEAD
Already up to date.
fatal: Couldn't find remote ref refs/heads/global/CDP-5353_fix
同样的问题...
E:\repo (master -> origin)
λ git branch -d -r origin CDP-5353_fix
error: remote-tracking branch 'origin' not found.
error: remote-tracking branch 'CDP-5353_fix' not found.
E:\repo (master -> origin)
λ git config --unset branch.CDP-5353_fix.remote
E:\repo (master -> origin)
λ git config --unset branch.CDP-5353_fix.merge
E:\repo (master -> origin)
λ git checkout master && git pull origin master && git fetch -p
Already on 'master'
From ssh://reponame
* branch master -> FETCH_HEAD
Already up to date.
fatal: Couldn't find remote ref refs/heads/global/CDP-5353_fix
同样的问题...
我在这里缺少什么?这条消息并没有弄乱我的回购或上面的任何东西,但它很烦人。有什么帮助吗?
更新 1:
git remote -v的输出:
λ git remote -v
origin ssh://reponame (fetch)
origin ssh://reponame (push)
注意:我隐藏了真实的回购名称,因为它属于公司 我为之工作,但他们不喜欢分享这种东西。
更新 2:
git config --get-all remote.origin.fetch 的输出:
λ git config --get-all remote.origin.fetch
+refs/heads/*:refs/remotes/origin/*
+refs/heads/CDP-5288:refs/remotes/origin/CDP-5288
+refs/heads/CDP-5299:refs/remotes/origin/CDP-5299
+refs/heads/global/CDP-5353_fix:refs/remotes/origin/global/CDP-5353_fix
...
【问题讨论】:
-
这里的分支是否存在区分大小写的命名问题?
-
@TimBiegeleisen 不是这种情况我不知道 Git 是否将日志保存在某处,但我很确定是否可以找到我何时以及如何从远程删除该分支。跨度>
-
您是否尝试执行
git remote -v?它显示了什么? -
@Djamel 添加到 OP :)
-
您是否更改了
fetch设置? (git config --get-all remote.origin.fetch将打印它们;标准是+refs/heads/*:refs/remotes/origin/*。)你有core.fsmonitor设置吗?
标签: git git-branch git-remote