Discover, install, and configure shell plugins with Fig Plugin Store →

Zsh Git Sync

A zsh plugin to sync git repositories and clean them up.

45 stars
8 forks

git-sync Build Status

Sync git repositories and clean them up.

a gif showing git-sync in action

Define sync

  • prune origin or upstream;
  • merge upstream into current branch;
  • push merged branch to fork (origin);
  • remove merged branches.


$ antibody bundle 'caarlos0/zsh-git-sync kind:path'

Or use antigen to load it as a shell plugin.


If you used antibody, the folder will be cloned and added to your $PATH, so, calling git sync will just work out of the box.

Otherwise, you'll need to add it to your git config:

$ git config --global alias.sync '!zsh -ic git-sync'

There is also git delete-local-merged, which only deletes locally merged branches (part of the cleanup thing).

Again, with antibody, git delete-local-merged will just work, otherwise:


$ git config --global alias.delete-local-merged '!zsh -ic git-delete-local-merged'