繁体   English   中英

删除所有没有最近提交的远程分支

[英]Remove all remote branches without recent commits

我在基于git-flow的环境中工作。 我们(和团队一起)决定一段时间不删除远程分支。 如何从远程X删除最近X天没有提交的所有功能分支。 我想可以是单线吗?

根据: 我如何获得git分支的列表,按最近的提交排序? 我可以按上次提交日期对分支进行排序。

在这里: 如何在Git中克隆所有远程分支? 我可以克隆所有远程分支。

我可以避免拉动所有远程分支进行此类清理吗?

您可以避免拉出所有远程分支。

这将为您提供所有远程功能分支,并按commiterdate排序,并显示最后一次提交的日期,谁是提交者和分支的简称。

git for-each-ref --sort=-committerdate refs/remotes/origin/feature --format='%(committerdate:short) %(authorname) %(refname:short)'

或者您可以显示相对于今天的提交日期

git for-each-ref --sort=-committerdate refs/remotes/origin/feature --format='%(committerdate:relative) %(authorname) %(refname:short)'

您所要做的就是选择要删除的分支并这样做。

git push origin :feature/newfeature

创建一个单行代码是可能的,但是我认为以您喜欢的任何一种语言编写一个小的脚本会更容易。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM