我正在与定制的构建系统一起工作,该系统管理大量的git存储库,并且主要用python编写。

如果我可以编写一条命令来报告所有存储库的当前分支,然后报告“分支”的头是否与“remotes/origin/branch”的头相同,这将为我节省很多时间。

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

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

最佳答案

如果您有足够新的git版本,则可以使用:

$ git rev-list --count --left-right branch...origin/branch
2   1

如果branch的提交次数在origin/branch之前,则第一个数字,而第二个数字是后面的提交数。因此,该分支有两个尚未在上游提交的提交,还有一个上游在我本地分支尚未提交的提交中。

我相信引入--count时是1.6或1.7。

关于python - git可以输出 "branch"和 "remotes/origin/branch"之间的提交次数的最简单方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16037623/

10-14 04:01