Caution
Work in progress
G-stack is a CLI util to simplify creating stacked branches and pull requests on github.
brew tap bendzae/gstack
and then
brew install gstack
To be able to create and modify github prs a personal access token is needed.
Check the official github docs
and make sure the token has read/write access to pull requests.
Then create a config file with the following content in $HOME/.gstack/config.toml
personal_access_token = "<GITHUB_PERSONAL_ACCESS_TOKEN>"
gs help
Creates a new stack with the current branch as a base and checks out the new branch
gs new
Stacks a new branch on top of the current stac
gs add
Pulls, rebases and pushed all stack branches and updates PR descriptions
gs sync
# or
gs ss
Move up and down trough stack branches with:
gs up
gs down
or interactively select a stack branch with
gs change
#or
gs c
Create github pr's for all stack branches that don't have a pr yet:
gs pr new
Merge all stack pr's in sequence to the stacks base branch (takes care of rebases in between merges):
gs pr merge