All apps/git-spice

git-spice

git-spice
Runs as gs, git-spice|macOS, Linux, Windows|abhinav.github.io

Command form

ai-draft · 4 tasks · 14 fields

Manage stacked branches. Pick a subcommand: create a branch, submit a stack of change requests, or sync with the remote. Other subcommands are left out.

Opens the form; the finished command lands at your prompt, unrun
otty gui git-spice

gs branch create

Create a stacked branch

Create a new branch on top of the current one, committing staged changes to it.

Create a stacked branchExample values, fixed in this page — nothing here reaches a terminal
Basic
Branch name*
string
Commit message
string
Stage modified and deleted files
--all
TasksEach one presets the form for one job
Create branch with commit
namemessageall
ParametersOnly these flags are editable in the form
Branch name
Leave empty to generate one from the commit message.
string · positional 0
Commit message
string
--message-m
Stage modified and deleted files
boolean
--all-a
Target branch
string
--target-t
Insert above target
boolean
--insert
Create below target
boolean
--below
Bypass commit hooks
boolean
--no-verify

gs stack submit

Submit the stack

Create or update change requests for every branch in the current stack.

Submit the stackExample values, fixed in this page — nothing here reaches a terminal
Basic
Dry run*
--dry-run
Fill title and body from commits
--fill
TasksEach one presets the form for one job
Preview submission
dry_runfill
Submit with filled details
filllabelreviewer
ParametersOnly these flags are editable in the form
Dry run
boolean
--dry-run-n
Fill title and body from commits
boolean
--fill-c
Labels
Comma-separated, or repeat.
string
--label-l
Reviewers
Comma-separated, or repeat.
string
--reviewer-r
Force push
boolean
--force
Bypass pre-push hooks
boolean
--no-verify

gs repo sync

Sync with remote

Pull the latest changes and delete branches whose change requests were merged.

Sync with remoteExample values, fixed in this page — nothing here reaches a terminal
Basic
Restack branches above deleted ones
3 choicesenum
TasksEach one presets the form for one job
Sync
restack
ParametersOnly these flags are editable in the form
Restack branches above deleted ones
enum
--restacknoneabovesupstack
SourcesEvery flag above is checked against these
ref
gs branch (b) create (c) [<name>] [flags] name: Name of the new branch --insert: Restack the upstack of the target branch onto the new branch --below: Place the branch below the target branch and restack its upstack -t, --target=BRANCH: Branch to create the new branch above/below -a, --all: Automatically stage modified and deleted files -m, --message=MSG: Us…
manual2026-10-27

abhinav.github.io

ref
gs stack (s) submit (s) [flags] -n, --dry-run: Don't actually submit the stack -c, --fill: Fill in the change title and body from the commit messages --[no-]draft: Whether to mark change requests as drafts --force: Force push, bypassing safety checks --no-verify: Bypass pre-push hooks when pushing to the remote. v0.15.0 -l, --label=LABEL,...: Add labels to t…
manual2026-10-27

abhinav.github.io

ref
gs repo (r) sync (s) [flags] --restack (): How to restack branches above deleted branches. One of 'none', 'aboves', and 'upstack'.
manual2026-10-27

abhinav.github.io

Before it fills your prompt, Otty checks the installed gs against its version. A form that does not match your version is not offered.