本地分支和远程跟踪分支之间的git diff

时间:2018-09-12 06:30:54

标签: git git-diff

如果本地分支与远程跟踪分支之间存在差异,我只是想获得一个非零的退出代码。

例如,假设本地分支为foo,并且我将其签出,那么diff命令将为:

git fetch origin
git diff --exit-code remotes/origin/foo

但是,我的问题是-是否有通用/编程方式为任何本地分支运行这种diff命令?通常,我想将本地分支与远程跟踪分支进行比较。

1 个答案:

答案 0 :(得分:0)

要以编程方式可靠地获取当前分支的上游,可以使用:

HEAD@{upstream}

因此在这种情况下,它将是:

git diff HEAD HEAD@{upstream}

据我所知,这可能是您运行时的默认设置:

git diff

没有更多参数;不过,我更想露骨。