美文网首页
批量删除远程无效分支的shell脚本

批量删除远程无效分支的shell脚本

作者: 靖哥哥编程 | 来源:发表于2024-01-14 18:31 被阅读0次

!/bin/bash

shell script delete remote branch and local branch

if [[ "" == 1 || "" ==2 ]]; then
echo "please add reponsitory path and delete date"
echo "example: ./delete_mr.sh ./npu-codebase 365 ###删除超过365天时间的分支"
exit
fi

reponsitory_name="1" echo "You are going to delete【"reponsitory_name"】 branchs !!!!!!";
echo " "
cd reponsitory_name; days="2"

for branch in git branch -r --no-merged | grep -v HEAD;
do

分支名称

branch_name=echo $branch | grep '/' | cut -d '/' -f 2-;

分支最后提交时间

branch_timestamp=git show --format="%ct" $branch | head -n 1;

当前系统时间

cur_sec_and_ns=date '+%s-%N';
cur_sec=${cur_sec_and_ns%-*};

时间差

time_different=[cur_sec-branch_timestamp];

阈值g

time_require=[3600*24*days];

if [[ "" !=  "$branch_name"
        && "HEAD" != "$branch_name" 
        && "master" != "$branch_name"
        && $time_different -ge $time_require
        ]]; then
    echo "deleting current branch: " `git show --format="%ci %cr" $branch | head -n 1` $branch_name
    echo "branch_name: " $branch_name
    echo "delete local "$branch_name
    local_result=`git branch -d $branch_name`
    echo "delete remote "$branch_name
    remote_result=`git push origin --delete $branch_name`
    echo "delete over"
    echo ""
fi          

done
echo "!!!!! game over !!!!!";

相关文章

  • #iOS Dev.#MAC终端日常使用命令

    git相关 以分支名包含的关键词查找远程分支 批量删除本地分支 清理无效的远程追踪分支 清除所有本地未提交的更改 ...

  • Git 技巧合集

    checkout 远程分支 删除本地分支 批量删除本地分支 删除远程分支 删除local stash 最简单粗暴的...

  • 批量删除git 本地分支、远程分支

    批量删除git 本地分支、远程分支、tag 批量删除本地分支 git branch -a | grep -v -E...

  • git仓库:本地同步线上分支

    使用命令: 效果:清理无效的远程追踪分支,通俗点就是删除本地分支,这里删除的本地分支在远程的分支已经被删除。 使用...

  • Shell编程--case,for,while,until

    shell多分支case语句 for循环 语法一: 批量压缩文件脚本 语法二: 从1加到100 批量添加用户 批量...

  • git高效命令大全

    批量删除本地分支 批量删除本地like 'jenn'或'finna'的分支 批量删除本地not like 'jen...

  • Git删除分支

    查看本地和远程分支 删除远程分支 删除本地分支

  • git 分支操作

    新建本地分支并关联远程分支 没有远程分支 或已有远程分支 删除远程分支 删除本地分支 回退到某个版本

  • git 删除远程分支

    git 删除远程分支 查看远程分支 git branch -a 删除远程分支 git push origin --...

  • git 删除远程分支、本地分支

    【git 删除本地分支】 【git 删除远程分支】 先查看远程分支 使用下面两条命令来删除远程分支

网友评论

      本文标题:批量删除远程无效分支的shell脚本

      本文链接:https://www.haomeiwen.com/subject/nvrcodtx.html