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”