Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Blow away branches that are older than a year.
#!/bin/sh
for branch in $(git branch -a | sed 's/^\s*//' | sed 's/^remotes\///' | grep -v 'master$'); do
if [[ "$(git log $branch --since "12 months ago" | wc -l)" -eq 0 ]]; then
# I have to do this because "git log" for me returns current directory contents... not sure why yet.
if [[ ${branch} == *".sh" ]]; then
continue
fi
local_branch_name=$(echo "$branch" | sed 's/remotes\/origin\///')
git branch -d $local_branch_name
git push origin --delete $local_branch_name
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment