Powershell批量删除Git中无人维护的Branch

本文介绍如何使用Powershell批量删除Git中无人维护的分支。通过获取所有分支、判断最后提交时间、设定时间阈值并执行删除操作,实现自动化清理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Powershell批量删除Git中无人维护的Branch

有这个需求 思路是
1. 批量获取所有分支
2. 取得该分支最后一次提交的时间
3. 比较最后一次提交时间与定义的无人维护时间的阈值,是否满足删除条件
4. 满足筛选条件的分支进行删除

批量获取所有分支

尝试输入以下命令

git branch –remote

返回如下分支名称

  origin/dev_chdoil
  origin/dev_chdqqqqq
  origin/dev_cl_3u
  origin/dev_clover

至此第一步完成

取得该分支最后一次提交的时间

隐约记得git log有查看提交时间的功能
通过谷歌最后确定命令如下
git log -1 分支名 –pretty=format:”%cD”

比较时间戳是否无人维护

StackFlow上大神给出String转DateTime方法
[datetime]::Parse((git log -1 $_.trim() –pretty=format:”%cD”)) -lt “2017-01-01”

删除远程分支

https://github.com/Jisuanke/tech-exp/issues/6
参考Github上文章 这个文章是删除本地的分支