Clean Gone Branches
Remove local git branches that have been deleted from remote (marked as [gone]).
Instructions
Run the following commands in sequence:
Update remote references:
git fetch --pruneView branches marked as [gone]:
git branch -vvList worktrees (if any):
git worktree listRemove worktrees for gone branches (if any):
git branch -vv | grep '\[gone\]' | awk '{print $1}' | sed 's/^[*+]*//' | while read -r branch; do worktree=$(git worktree list | grep "\[$branch\]" | awk '{print $1}') if [ -n "$worktree" ]; then echo "Removing worktree: $worktree" git worktree remove --force "$worktree" fi doneDelete gone branches:
git branch -vv | grep '\[gone\]' | awk '{print $1}' | sed 's/^[*+]*//' | xargs -I {} git branch -D {}
Report the results: list of removed worktrees and deleted branches, or notify if no [gone] branches exist.