Skip to content

A handy tool for doing efficient in-memory commit rebases & fixups

License

Notifications You must be signed in to change notification settings

mystor/git-revise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

189c9fe · Jan 28, 2025
Jan 28, 2025
Aug 13, 2022
Jan 28, 2025
Aug 13, 2022
Dec 15, 2018
Aug 13, 2022
Jan 5, 2022
Dec 18, 2018
Nov 6, 2019
Jul 7, 2020
Jan 5, 2022
Aug 13, 2022
Aug 13, 2022
Jan 5, 2022
Aug 13, 2022
Aug 13, 2022

Repository files navigation

git revise

Build Status PyPi Documentation Status

git revise is a git subcommand to efficiently update, split, and rearrange commits. It is heavily inspired by git rebase, however it tries to be more efficient and ergonomic for patch-stack oriented workflows.

By default, git revise will apply staged changes to a target commit, then update HEAD to point at the revised history. It also supports splitting commits and rewording commit messages.

Unlike git rebase, git revise avoids modifying the working directory or the index state, performing all merges in-memory and only writing them when necessary. This allows it to be significantly faster on large codebases and avoids unnecessarily invalidating builds.

Install

$ pip install --user git-revise

Various people have also packaged git revise for platform-specific package managers (Thanks!)

macOS Homebrew

$ brew install git-revise

Fedora

$ dnf install git-revise

Documentation

Documentation, including usage and examples, is hosted on Read the Docs.

About

A handy tool for doing efficient in-memory commit rebases & fixups

Resources

License

Stars

Watchers

Forks

Packages

No packages published