我是git的新手。目前,我尝试按照本教程将应用程序的图标覆盖到分支名称和版本:http://www.merowing.info/2013/03/overlaying-application-version-on-top-of-your-icon/
但是执行时出现错误
git rev-parse --abbrev-ref HEAD
warning: refname 'HEAD' is ambiguous.
error: refname 'HEAD' is ambiguous
谷歌搜索显示了一些结果,表明这是在存在名为“ HEAD”的分支时发生的-但我认为并非如此。至少在bitbucket的在线存储库中,我看不到任何标记为“ HEAD”的分支并通过终端查询它:
git branch -r
origin/#224-Push-notifications
origin/1.0.2
origin/HEAD -> origin/master
origin/app-forced-update
origin/master
origin/milestone6
origin/staging
git branch
* #224-Push-notifications
1.0.2
HEAD
master
milestone3
milestone4
milestone5
milestone6
不知道为什么在远程HEAD上没有->而在本地HEAD上没有。也许那是问题吗?
另外,在.git文件夹中搜索HEAD也会产生
find .git -name HEAD
.git/HEAD
.git/logs/HEAD
.git/logs/refs/heads/HEAD
.git/logs/refs/remotes/origin/HEAD
.git/refs/heads/HEAD
.git/refs/remotes/origin/HEAD
任何人都知道问题出在哪里,我如何彻底解决问题?
最佳答案
您有一个名为HEAD的本地分支,因此git不知道您是在引用该分支还是HEAD,这是当前分支中的最新提交。命名分支HEAD并不是一个好主意,因此您应该删除它:git branch -D HEAD
。这将修复rev-parse错误。
远程分支中的origin/HEAD -> origin/master
是特定于远程的事物,这意味着当您从远程克隆时,主分支将被检出。