重命名'master'分支后(使用Sourcetree),我无法再获取远程存储库中所做的更改。
我收到错误:
error: cannot open .git/FETCH_HEAD: Permission denied
当我打开此文件时,我发现引用的分支仍然设置为branch 'master'
。
看一下远程存储库,我看到一个名为'master'的分支仍然存在,除了重命名的分支,我合并了我的上一次更改。我认为某处存在问题,并且远程存储库中未正确复制重命名。
我尝试手动编辑FETCH_HEAD
(更改完整的SHA和指向的分支),但我仍然遇到此错误。当然,我不能像我的主分支那样重新命名,因为一个名为'master'的分支总是存在。
有解决这个问题的方法吗?
答案 0 :(得分:1)
事实上,似乎这个问题(可能)是由于各种因素的结合:
由于使用chown
命令似乎没有效果,我终于使用以下过程解决了我的问题:
rm -f .git/FETCH_HEAD
命令删除被拒绝的文件(如this answer中所述)git branch -u
命令重新连接未跟踪的分支(如this comment中所述)之后,我能够获取所有远程分支,现在,所有远程分支都与我的本地存储库正确同步。