用`repo forall`列出过时的分支

时间:2016-02-17 22:46:17

标签: git repo

只是澄清一下,这是关于Android Repo

我希望能够使用repo forall将我的工作目录与任意远程分支进行比较,以查看是否需要从该分支中​​获取任何更改。

这是我到目前为止最接近的:

repo forall -p -c "git rev-list HEAD..origin/branchname --count"

该命令将打印每个git项目的工作副本落后于origin / branchname的提交数。我希望通过以下方式改善它:

  • 忽略已经是最新的分支。有时远程分支包含空合并提交或者使用上述命令报告非零数字的东西,但分支实际上不包含任何新代码。
  • 不为最新的分支打印输出。我真的只关心那些不是最新的分支机构。我不需要看到一堆0。如果我可以使git命令不打印输出,repo forall将不会打印输出。

1 个答案:

答案 0 :(得分:1)

试试这个:

repo forall -p -c "if [[ `git diff HEAD origin/branchname` ]]; then git rev-list HEAD..origin/branchname --count; fi"