# Install git-machete with Homebrew, apk, Nix, scoop

Git repository organizer & rebase workflow automation tool. Version 3.44.0 via Homebrew; verified 2026-07-01.

## Install

```sh
sudo av install brew:git-machete
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install git-machete
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add git-machete
```

  Evidence: Alpine Linux edge package indexes: git-machete from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#git-machete
```

  Evidence: nixpkgs package indexes: pkgs/by-name/gi/git-machete/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

### Windows

- Scoop (92%):

```sh
scoop install main/git-machete
```

  Evidence: Scoop official bucket manifest trees: bucket/git-machete.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:git-machete
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/git-machete>
- **Version:** 3.44.0
- **Source summary:** Git repository organizer & rebase workflow automation tool
- **Homepage:** <https://github.com/VirtusLab/git-machete>
- **Repository:** <https://github.com/VirtusLab/git-machete>
- **Upstream docs:** <https://git-machete.readthedocs.io/en/stable>
- **License:** MIT
- **Source archive:** <https://files.pythonhosted.org/packages/d2/ba/4717ff3d30455cbadf7efd9c0e98aa52b4db2cb0353bd3bd5e91ee3bd483/git_machete-3.44.0.tar.gz>
- **Last updated:** 2026-07-01T16:59:11Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- git-machete (cli)
- git-machete (alias)

## Dependencies

- python@3.14

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.44.0
- Package-manager updated: 2026-07-01
- Local data: ok
- Upstream repository: https://github.com/VirtusLab/git-machete
- info: No cached GitHub release or tag data was available.
## Project history and usage

git-machete is a Git repository organizer for stacked and multi-branch workflows. It records a branch layout, shows the relation between branches, and automates repeated rebase, merge, push, pull, and pull-request maintenance tasks across a chain of branches.

### Project history

VirtusLab published the project as a public GitHub repository in February 2018. The README presents the tool around a bird's-eye view of a repository and a `.git/machete` layout file, with commands such as `discover`, `status`, `go`, `traverse`, and `advance`.

The 3.x release notes show the project expanding from local branch traversal into code-hosting workflows. Releases added GitHub and GitLab pull-request or merge-request commands, generated PR/MR description sections for branch chains, worktree handling, interactive branch selection, shell completions, and an agent skill for AI coding tools.

### Adoption history

git-machete has unusually broad packaging for a workflow-specific Git extension. The project's own package matrix lists PyPI, Conda Forge, Homebrew, Alpine, AUR, Gentoo, nixpkgs, Scoop, Snap, GitHub Releases, and Read the Docs. The README also points to an IntelliJ Platform plugin, giving the workflow both CLI and IDE surfaces.

This adoption pattern fits teams that review stacked pull requests or maintain several dependent topic branches. Instead of asking users to remember the stack in their heads, the package makes the branch graph explicit and scriptable.

### How it is used

Practitioners start with `git machete discover` to infer and edit a branch layout, then use `git machete status` to inspect whether branches are in sync with their parents. `git machete traverse` walks the layout and performs rebases, merges, pulls, and pushes as needed.

The tool is also used to create or retarget GitHub pull requests and GitLab merge requests from the parent branch recorded in `.git/machete`. That makes it useful for small, focused pull requests that still depend on each other.

### Why package nerds care

git-machete is package-nerd interesting because it turns a social workflow problem, the review and maintenance of branch stacks, into a small text file plus a Git subcommand. Its broad package matrix also shows the work required for a Python CLI to feel native across Linux distributions, macOS, Windows package managers, shells, and IDEs.

### Timeline

- 2018: Public GitHub repository created.
- 2023: 3.25.0 added GitLab support and a Scoop package.
- 2024: 3.31.0 added GitHub and GitLab PR/MR description update commands.
- 2026: 3.38.0 added interactive `git machete go` branch selection.
- 2026: 3.41.0 added an agent skill and branch rename command.

### Related projects

- git-machete relates to Git itself, stacked-branch review workflows, GitHub and GitLab CLI tooling, and the VirtusLab git-machete IntelliJ plugin. It overlaps with rebase helpers, but its defining abstraction is a persistent branch layout.

### Sources

- <https://api.github.com/repos/VirtusLab/git-machete>
- <https://git-machete.readthedocs.io/en/stable>
- <https://github.com/VirtusLab/git-machete#readme>
- <https://github.com/VirtusLab/git-machete/blob/master/PACKAGES.md>
- <https://github.com/VirtusLab/git-machete/blob/master/RELEASE_NOTES.md>


## Security Notes

No matching local secret-handling manifest was found for git-machete. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: .git/machete, .git/worktrees/.../machete, .git/modules/.../machete
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** git-machete
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Nix - git-machete: normalized package name match | nixpkgs package indexes: pkgs/by-name/gi/git-machete/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - git-machete - 3.42.0-r0: normalized package name match | Alpine Linux edge package indexes: git-machete from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | git repository organizer & rebase/merge workflow automation tool | https://github.com/VirtusLab/git-machete
- apk - git-machete-bash-completion - 3.42.0-r0: normalized package name match | Alpine Linux edge package indexes: git-machete-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Bash completions for git-machete | https://github.com/VirtusLab/git-machete
- apk - git-machete-fish-completion - 3.42.0-r0: normalized package name match | Alpine Linux edge package indexes: git-machete-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Fish completions for git-machete | https://github.com/VirtusLab/git-machete
- apk - git-machete-pyc - 3.42.0-r0: normalized package name match | Alpine Linux edge package indexes: git-machete-pyc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Precompiled Python bytecode for git-machete | https://github.com/VirtusLab/git-machete
- apk - git-machete-zsh-completion - 3.42.0-r0: normalized package name match | Alpine Linux edge package indexes: git-machete-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Zsh completions for git-machete | https://github.com/VirtusLab/git-machete
- Scoop - main/git-machete: normalized package name match | Scoop official bucket manifest trees: bucket/git-machete.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [git-multipush](https://www.automicvault.com/pkg/brew/git-multipush/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extension, git-workflow.
- [git-now](https://www.automicvault.com/pkg/brew/git-now/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extension, git-workflow.
- [git-number](https://www.automicvault.com/pkg/brew/git-number/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extension, git-workflow.
- [git-delete-merged-branches](https://www.automicvault.com/pkg/brew/git-delete-merged-branches/) - Shares av.db curated category or tags: branch-management, cli, developer-tools, git, version-control.
- [git-imerge](https://www.automicvault.com/pkg/brew/git-imerge/) - Shares av.db curated category or tags: cli, developer-tools, git, rebase, version-control.
- [git-integration](https://www.automicvault.com/pkg/brew/git-integration/) - Shares av.db curated category or tags: branch-management, cli, developer-tools, git, version-control.
- [git-lfs](https://www.automicvault.com/pkg/brew/git-lfs/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extension, version-control.
- [git-mediate](https://www.automicvault.com/pkg/brew/git-mediate/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extension, version-control.
- [git-plus](https://www.automicvault.com/pkg/brew/git-plus/) - Both packages touch the same language runtime or ecosystem. Shared terms: branch, branch-management, cli, control, developer.

## Combined YAML source

View the package source record on GitHub. [combined/git-machete.yml](https://github.com/automic-vault/db/blob/main/combined/git-machete.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
