git-stashd
is an autostashing daemon for Git. By utilizing the stashing functionality built into Git,
git-stashd
stores the modified contents of a dirty worktree in a stash, which you can checkout, commit,
or discard at a later point.
There are two installation methods, Homebrew and manual.
brew tap nickolasburr/pfa
brew install git-stashd
By default, git-stashd
is installed to /usr/local/bin
. You can set the prefix
variable when running make
to specify an alternate path.
make
make install
-F, --foreground Run daemon in foreground. Helpful for debugging. -I, --interval [NUM] Interval (in seconds) to check for changes. Defaults to 600
(10 minutes).-L, --log-file [PATH] Path to alternate log file. Default location is $HOME/git-stashd.log
.-M, --max-entries [NUM] Maximum number of entries a stash should hold† -P, --path Path to Git repository. Defaults to cwd
.-h, --help Show help information and usage examples. -v, --version Show version information.
Start daemon for repository ~/projects/example
# You can omit --path ~/projects/example, if currently in the ~/projects/example directory.
git stashd --path ~/projects/example
Start daemon for repository ~/projects/example
with an interval of 30 seconds
git stashd --path ~/projects/example --interval 30
Start daemon in foreground for repository ~/projects/example
with an interval of 5 minutes
git stashd --foreground --path ~/projects/example --interval 300
When --max-entries
threshold is met, the daemon will exit.