🍋 Keep your Git repo fresh.
Clone or download
imsky Merge pull request #86 from hultberg/patch-1
Added archlinux package
Latest commit 23a3a64 Feb 19, 2018
Failed to load latest commit information.
LICENSE Create LICENSE Jul 19, 2017
README.md Added archlinux package Feb 19, 2018
git-fresh update git-fresh docs Nov 15, 2017
install.sh add remote testing Mar 23, 2016
package.json 1.11.0 Nov 15, 2017


git-fresh 🍋

Keep your repo fresh with one command.


Usage: git fresh [-fmrtRW] [-sl] [remote] [root]
By default, git-fresh will:
 - update local root (master) to match remote root
 - stash changes
 - prune remote branches

git-fresh will ignore any branches listed in a .freshignore file.
.freshignore should contain branch names you would like to ignore
on separate lines. The file can exist in the current Git repo
or in the home directory, i.e. ~/.freshignore.

-f: Delete stale local and remote branches
-m: Merge remote root into current branch
-r: Rebase current branch against remote root
-t: Remove local tags that do not exist on remote
-R: Reset local root to remote root
-W: Wipe workspace clean

-s: Apply stashed changes after run
-l: Only delete local stale branches

-v: Print git-fresh version and exit

remote: remote name, origin by default
root: root branch, master by default


Manual on Linux or MacOSX

  1. Clone or download
  2. cd git-fresh
  3. sudo ./install

Manual on Windows

Copy the file git-fresh to usr\bin in your git installation directory. This usually is C:\Program Files\Git\usr\bin.


  • Homebrew: brew install git-fresh
  • bpkg: bpkg install imsky/git-fresh


git-fresh is provided under the MIT License.


git-fresh is a project by Ivan Malopinsky.