我试试:
git log -n 1 --pretty=format:%H --remotes=upstream/master
但它从另一个分支和另一个远程
返回最后一次提交如果我这样做
git log -n 1 --pretty=format:%H --remotes=upstream
它从我分叉这个存储库的时间/地点返回我的提交...
又添了一个例子:
>git fetch upstream master
From git://github.com/fsharp/fsharp
* branch master -> FETCH_HEAD
>git ls-remote upstream master
81c94470de1587902a20f40741388e361dc09690 refs/heads/master
>git log -n 1 --pretty=format:%H upstream/master
2898aa10ec5022fdfb79e5c3a6350d58737964cc
>git log -n 1 --pretty=format:%H FETCH_HEAD
1c94470de1587902a20f40741388e361dc09690
答案 0 :(得分:1)
最可靠的方法是首先获取该遥控器:
git add aremote /url/of/that/remo
git fetch aremote
git log -n 1 --pretty=format:%H aremote/master
您可以检查FETCH_HEAD是否至少在右侧SHA1
git log -n 1 --pretty=format:%H FETCH_HEAD
如果是,请检查您是否没有名为' upstream/master
'的标签。哪个"影子" refs' upstream/master
'。
OP Heather提及in the comments获取正确的SHA1:
git merge-base master upstream/master