Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git:获取所有未推送的分支_Git - Fatal编程技术网

Git:获取所有未推送的分支

Git:获取所有未推送的分支,git,Git,在我的项目存储库中有许多分支。 这些年来我一直在做这些。当然,我必须准确,应该删除已完成的本地分支(反映相应的jira票据),但遗憾的是,我并不总是这样做 当前场景需要迁移到另一个开发人员桌面, 我可能会将所有本地分支推送到远程,并从新主机克隆/拉取。但是我不能强制推送它们,我需要首先获得未推送分支的列表,手动检查它们并决定是否推送它们 如何获取非同步本地分支的列表?我找不到这样的推荐…我会按照 git for-each-ref --format='%(if:notequals==)%(upst

在我的项目存储库中有许多分支。 这些年来我一直在做这些。当然,我必须准确,应该删除已完成的本地分支(反映相应的jira票据),但遗憾的是,我并不总是这样做

当前场景需要迁移到另一个开发人员桌面, 我可能会将所有本地分支推送到远程,并从新主机克隆/拉取。但是我不能强制推送它们,我需要首先获得未推送分支的列表,手动检查它们并决定是否推送它们


如何获取非同步本地分支的列表?我找不到这样的推荐…

我会按照

git for-each-ref --format='%(if:notequals==)%(upstream:trackshort)%(then)%(refname:short)%(end)' refs/heads | sort -u
它对每个ref使用
,非常方便
%(如果)%(那么)[%(其他)]%(结束)
构造根据上游轨道状态进行过滤

最后的
| sort-u
只是演示奖金,主要用于去除空白行



然而,我意识到这里仍然有一点不准确:它将输出分支列表与远程对应分支不同步,是的,但是将显示前面的分支或后面的分支,而我猜您只需要前面的分支。在您的环境中,这可能不是问题,但请注意。

我会按照

git for-each-ref --format='%(if:notequals==)%(upstream:trackshort)%(then)%(refname:short)%(end)' refs/heads | sort -u
它对每个ref使用
,非常方便
%(如果)%(那么)[%(其他)]%(结束)
构造根据上游轨道状态进行过滤

最后的
| sort-u
只是演示奖金,主要用于去除空白行


然而,我意识到这里仍然有一点不准确:它将输出分支列表与远程对应分支不同步,是的,但是将显示前面的分支或后面的分支,而我猜您只需要前面的分支。在您的上下文中,这可能不是问题,但请注意这一点