Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@claycoleman/gt-wrapper) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
GT - Enhanced Graphite CLI
The Graphite CLI provides amazing abilities to work on your Git repo using stacked diffs. However, they paywall off some of the best features: sync (which pulls the trunk branch and restacks all local branches) and submit (which pushes your stack to the remote and adds stack PRs). This wrapper adds these features back in without paywall.
It does this by wrapping the original Graphite CLI with a python script that adds the sync and submit commands, and passes through all other commands to the original Graphite CLI – similar to how gt will pass through commands to git as well!
Installation
If you have the original Graphite CLI installed, uninstall it first:
# npm: npm uninstall -g @withgraphite/graphite-cli
# brew: brew uninstall withgraphite/tap/graphiteRequirements: Node.js 14+, Python 3, Git, GitHub CLI
Install:
npm install -g @claycoleman/gt-wrapperUsage
Enhanced Commands
# Smart sync with branch cleanup
gt sync
# Intelligent stack submission
gt submitAll Original Commands Work
gt co # shows your local branches
gt create -a -m "feat: this is my feature"
gt restack # moves stack onto the latest local commit of trunk
gt move --onto main # moves a branch and its upstacked branches onto main, but could be any branch
# ... everything else works exactly the sameWhat's Enhanced
- sync: Pulls main, identifies merged branches, prompts cleanup, restacks
- submit: Analyzes stack, offers submission modes, manages PR stack references
- Everything else: Identical to original Graphite CLI v1.4.3
Uninstall
npm uninstall -g @claycoleman/gt-wrapper