无默认上游的git状态不提供完整的回购比较信息;解决办法?
我的本地系统中的工作回购有2个远程回购(舞台和现场)。我想把它们单独推到一起,在开发的过程中进行阶段性开发,在代码准备就绪时进行生活。因此,我不能设置默认的上游 因此,当我执行git状态时,我没有收到“您的分支落后于源/分支n提交”的消息无默认上游的git状态不提供完整的回购比较信息;解决办法?,git,repository,git-status,Git,Repository,Git Status,我的本地系统中的工作回购有2个远程回购(舞台和现场)。我想把它们单独推到一起,在开发的过程中进行阶段性开发,在代码准备就绪时进行生活。因此,我不能设置默认的上游 因此,当我执行git状态时,我没有收到“您的分支落后于源/分支n提交”的消息 是否有任何方法可以在不必设置默认上游远程/分支的情况下获得此消息?或者至少是一个命令,我可以将它与git status结合起来以获得相同的信息?没有直接的方法。您可以编写一个简单的脚本并将其命名为别名(多个远程的循环未经测试,但应该是关闭的) 在所有3个回购协
是否有任何方法可以在不必设置默认上游远程/分支的情况下获得此消息?或者至少是一个命令,我可以将它与git status结合起来以获得相同的信息?没有直接的方法。您可以编写一个简单的脚本并将其命名为别名(多个远程的循环未经测试,但应该是关闭的)
在所有3个回购协议中,分支机构的名称相同?ie
branch
,stage/branch
,live/branch
?@AndrewC-Yes。它将是所有回购协议中的主要分支机构。
myBranch=$(git symbolic-ref --short HEAD)
for upstream in "stage" "live"
do
ahead=$(git rev-list ${upstream}/${myBranch}..${myBranch} | wc -l)
behind=$(git rev-list ${myBranch}..${upstream}/${myBranch} | wc -l)
# print out whatever you want here
echo "${upstream} - ahead ${ahead} behind ${behind}
done