2

Clean up my git (Snack Pack #5)

 3 years ago
source link: https://dev.to/blaketweeted/clean-up-my-git-snack-pack-5-1f7n
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

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 modeExit 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 modeExit 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 modeExit fullscreen mode

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

$ cleanUpMyGit
Enter fullscreen modeExit 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.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK