最简单的方法git可以输出"branch"和"remotes/origin/branch"之间的提交次数

Spa*_*rky 7 python git

我正在使用自定义构建系统来管理大量的git存储库,主要用python编写.

如果我能编写一个报告所有存储库的当前分支的命令,那么它将节省我很多时间,然后报告"分支"的头部是否与"远程/原点/分支"的头部相同.

我们已经有一个命令将在每个git存储库中运行一个shell命令,我正在寻找的是一种从git获取一些关于branch和remotes/origin/branch的相对位置的简单格式化信息的方法.某些东西要么是提交数量差异,要么是简单的布尔值.

从git中获取这些信息的方法是什么,这将最大限度地减少我在python方面必须做的解析和处理的数量?

Joh*_*ter 19

如果你有一个足够新的git版本,你可以使用:

$ git rev-list --count --left-right branch...origin/branch
2   1
Run Code Online (Sandbox Code Playgroud)

第一个数字,如果提交branch数量超前origin/branch,第二个数字是提交数量.所以这个分支有两个尚未上游的提交,并且还有一个上游提交尚未在我的本地分支中.

当引入--count时,我认为它是1.6或1.7.


ako*_*nov 1

git status显示您在远程跟踪分支之前/之后的提交次数。不过,您需要先执行 git fetch,否则 git 无法知道是否有任何新内容进入远程。