我们如何知道本地主人是否在回购中远程主人后面没有拉出或取出。
我的意思是在拉或取之前,我想确定我的本地主人是否在repo master后面,以便我可以执行fetch / rebase / merge如果它落后
答案 0 :(得分:1)
我不知道。如果你拿到,你不必立即改变,然后" git status"会告诉你你是否领先(或两者)。你必须做某种"远程查询"获取您想要的信息 - 获取是该查询。
答案 1 :(得分:1)
git fetch
是出于这个非常特殊的目的。它会更新跟踪分支,以便您知道分支与远程分支相比有多远/多远。它不会将远程更改合并/应用到您的本地分支。 git pull
就是这么做的。
这就是git pull
和git fetch
答案 2 :(得分:1)
您仍然需要以某种方式联系远程仓库。
可以提供提示的唯一命令是git ls-remote
git ls-remote origin
更确切地说,比较:
git ls-remote origin -h refs/heads/master
git rev-list --max-count=1 origin/master
如果为主分支返回的SHA1与您在本地分支返回的SHA1不同,则您的分支可能会落后(或者如果可以从本地分支HEAD访问SHA1,则可以提前)
至少,使用git ls-remote
,您无法获取所有回购。