Weave your branches together
git-loom is a Git CLI tool that makes working with integration branches seamless. Inspired by tools like jujutsu and Git Butler, git-loom helps you work on multiple features simultaneously while keeping your branches organized and independent.
Important
git-loom has been written with the help of AI, especially Claude
Full documentation is available at https://narnaud.github.io/git-loom/
- Shell setup (completions for PowerShell, Clink)
- Configuration (remote type, push remote, hidden branches)
Workflow:
init Initialize a new integration branch
update, up Pull-rebase and update submodules
push, pr Push a branch to remote
Commits:
commit, ci Create a commit on a feature branch
fold Amend, fixup, or move commits [amend, am, fixup, mv, rub]
absorb Auto-distribute changes into originating commits
split Split a commit into two
reword, rw Reword a commit message or rename a branch
drop, rm Drop a change, commit, or branch
Branches:
branch, br Manage feature branches (create, merge, unmerge)
Inspection:
status Show the branch-aware status (default command)
show, sh Show commit details (like git show)
trace Show the latest command trace
cargo install git-loomSee the installation guide for more options (Scoop, pre-built binaries, from source).
Contributions are welcome! This project is in early development, so there's plenty of room for new ideas and improvements.
This project uses pre-commit to manage Git hooks. Install the hooks with:
pre-commit install --install-hooksThis ensures commit messages and code quality checks run automatically before each commit.
MIT License - Copyright (c) Nicolas Arnaud-Cormos
See LICENSE file for details.
Inspired by:
- jujutsu - A Git-compatible VCS with powerful features for managing complex workflows
- Git Butler - A Git client that makes working with virtual branches easy
