【发布时间】:2013-07-18 09:39:47
【问题描述】:
我正在开发一个 git 插件,我需要知道本地 repo 何时更改(可以提交更改),ahead(可以推送到远程) 或后面(可以从远程拉取)使用命令行。
这就是我目前正在做的事情:
-
可以提交吗?
如果
git diff-index --name-only --ignore-submodules HEAD --返回一些东西, 那么是的,有更改要提交。 -
可以推送吗?
如果
git status -sb在其输出中包含单词ahead,那么是的,那里 是要推送的提交。 -
可以拉吗?
尚未实现。
can commit? 部分似乎工作正常。 可以推送吗?只对master分支有效,这是个大问题。
如何安全地检查每个分支上的 git repo 是否有要提交的更改、要推送的提交或需要 git pull?
【问题讨论】:
-
对于推送部分,您将拥有 Git 2.5+(2015 年第二季度)
git for-each-ref --format="%(push:track)" refs/heads。查看更多in my answer there。
标签: linux git bash shell github