Graphite Reviewer is now Diamond
Leveling up your Git workflow with Graphite

Leveling up your Git workflow with Graphite

Sara Verdi
Sara Verdi
Graphite software engineer
Try Graphite

Traditional Git commands can be complex, repetitive, and confusing, especially when managing multiple branches, frequent updates, and collaboration across teams. Issues like merge conflicts, branch dependency management, and out-of-date branches can significantly slow down development.

Graphite’s CLI is built on top of Git, but it takes many of Git’s more complex operations and makes them simpler and more intuitive. Two of its core benefits are:

  • Simplified git commands: Graphite abstracts away some of Git's sharper edges—like rebasing and conflict resolution—into easy-to-use commands. This reduces the cognitive load on developers, letting them focus on writing code rather than wrestling with Git.
  • Pull request stacking: Graphite supports stacking, a workflow developed at Meta and Google, that lets developers break their work into smaller, manageable pieces, submit incremental changes for review, and keep moving forward without delays waiting for feedback.

Graphite augments Git by minimizing command sequences and improving pull request management with its intuitive CLI commands. Here’s how Graphite simplifies these aspects:

Instead of executing multiple Git commands, Graphite provides more succinct actions:

Create a branch and submit a PR in one step:

gt create --all --message "Initial commit"

gt submit --stack

Keep branches up-to-date automatically:

gt sync

Git commands are complex to reverse or modify after they've been executed. The gt undo command provides a quick way to undo commands, offering a safety net that allows developers to correct errors without wasting more time.

Graphite excels at handling complex pull request workflows:

Manage dependent PRs efficiently:

gt stack

This table compares the process of stacking pull requests using traditional Git commands versus using Graphite’s simplified commands:

table comparing Graphite commands for stacking with vanilla Git

Visualize branch relationships:

gt log short

Apply feedback across dependent branches:

gt modify --all --message "Update per feedback"

For detailed information on each command and additional functionalities, you can refer to the Graphite command reference.

By consolidating Git operations and simplifying branch management, Graphite eliminates many of the friction points that traditionally slow down development cycles. With Graphite, your teams can also take advantage of:

  • Reduced context switching between CLI and browser
  • Automated branch synchronization
  • Simplified dependency management for related changes
  • Faster review and feedback integration
  • Clear visualization of complex branch relationships

Ready to join the thousands of developers who have already modernized their Git workflows with Graphite CLI? Get started today:

Built for the world's fastest engineering teams, now available for everyone