DEV Community

Cover image for Clean up my git (Snack Pack #5)
Blake Campbell
Blake Campbell

Posted on

2 2

Clean up my git (Snack Pack #5)

Git Repo maintenance

If you've been working on any repo for an extended amount of time, you may have saved a million branches that have already been merged. It is time to clean all those old ones out.


The commands we'll be using.

# Removes references from branches that are no longer on the origin
git remote prune origin
Enter fullscreen mode Exit fullscreen mode

Note this next part will depend on your main branch's name. If you haven't yet, then you should rename master to main. See below for how to.

# Lists all the branches that have been merged into main and remove them
git branch --merged main | grep -v '^[ *]*main$' | xargs git branch -d
Enter fullscreen mode Exit fullscreen mode

Wrap it all up.

The last step is relatively easy. Combine it into your .zshrc or .bashrc. I'm sure there's a Windows and Linux equivalent, but I'm using macOS.

alias cleanUpMyGit="git remote prune origin ; git branch --merged master | grep -v '^[ *]*master$' | xargs git branch -d"
Enter fullscreen mode Exit fullscreen mode

Go ahead and restart your terminal, then try it out in a repo directory.

$ cleanUpMyGit
Enter fullscreen mode Exit fullscreen mode

Afterward, you should see a list of the branches removed by the command. Happy Coding!


References:

My snack pack reads are intended for a quick read without any fluff and provide actionable items.

Sentry blog image

How I fixed 20 seconds of lag for every user in just 20 minutes.

Our AI agent was running 10-20 seconds slower than it should, impacting both our own developers and our early adopters. See how I used Sentry Profiling to fix it in record time.

Read more

Top comments (0)

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post