Awesome
git-branch-stash
Manage snapshots of your working directory
Dual-licensed under MIT or Apache 2.0
Documentation
About
Backup and restore what your branches, including what they point at.
Example
Install
Download a pre-built binary (installable via gh-install).
Or use rust to install:
cargo install git-branch-stash-cli
Uninstall
See the uninstall method for your installer.
Once removed, git-branch-stash
leaves behind:
.git/branch-stash
Removing this is safe and will have no effect.
Getting Started
Configuring git-branch-stash
Protected branches: These are branches like main
or v3
that git-branch-stash
must not modify. git-branch-stash
will also rebase local protected branches against
their remote counter parts.
Run git-branch-stash --protected -v
to test your config
- To locally protect additional branches, run
git-branch-stash --protect <glob>
. - When adopting
git-branch-stash
as a team, you can move the protected branches from$REPO/.git/config
to$REPO/.gitconfig
and commit it.
Pull remote when working from a fork, where upstream is a different remote than
origin
, run git config --add stack.pull-remote <REMOTE>
to set your remote in $REPO/.git/config
.
To see the config, run git-branch-stash --dump-config -
.
Using
FAQ
Why don't you just ...?
Have an idea, we'd love to hear it!
There are probably git
operations or workflows we haven't heard of and would
welcome the opportunity to learn more.