Skip to content

macOS · Free edition, no account required

Download GitAegis

GitAegis is published as a signed macOS disk image, at an immutable versioned path, with its SHA-256 alongside it, so you can check what you got rather than trust that you got it. The latest build is 0.1.2, published 14 August 2026.

Requires Git 2.38.0 or newer, already installed · macOS 12 or later · Apple Silicon and Intel · No account, no sign-in, no telemetry

Before you install: GitAegis runs the Git already on your machine. It does not bundle Git and never downloads one. If git --version is below 2.38.0, install a newer Git first.

macOS

One universal disk image: Apple Silicon and Intel, both native, nothing to choose between.

macOS

universal

macOS 12 or later · Apple Silicon and Intel

Download 0.1.2
File
GitAegis_0.1.2_universal.dmg
Size
19.5 MB
SHA-256
60a78c7e66f9e6a6a9bbebfb468f9c241dfd754c1c85256fa93d69408a3e8f7e

Every published build ships with

A signed, notarised disk image
One universal .dmg(Apple Silicon and Intel, both native) checked against a Developer ID certificate and Apple’s notary service.
An immutable versioned path
Each version is published at its own URL, so a link to a release keeps meaning the same bytes. Every version stays listed, withdrawn ones included.
A SHA-256 checksum alongside it
So you can check what you got rather than trust that you got it. The two commands are further down this page.

There is no Windows build and no Linux build. The application is packaged for macOS only, and this page will not offer you a platform it cannot serve.

GitAegis requires Git 2.38.0 or newer

It does not bundle a copy and never downloads one. If no usable Git is found, GitAegis tells you at launch instead of failing halfway through an operation.

  1. Check what you have.

    If this prints git version 2.38.0 or higher, you are done.

    shell
    git --version
  2. On macOS 12, Apple's Command Line Tools are one patch release too old.

    Monterey’s Command Line Tools stop at Git 2.37.1, just below the floor. This catches people out because Git is clearly installed and clearly works. It is simply too old for the plumbing GitAegis relies on to read and write repository state safely.

    shell
    brew install git
    git --version

    On macOS 13 and later the Command Line Tools usually ship a Git at or above the floor, but the version depends on which Command Line Tools release you installed, not on which macOS you run. Check rather than assume.

  3. GitAegis does not read your PATH.

    It probes four fixed locations in order (the figure shows them) and takes the first Git at or above the floor.

    So Homebrew’s Git is picked up even when /usr/bin/git comes first in your shell, and no PATH reordering is needed. The trade is that a Git installed somewhere else (Nix, asdf, mise, a custom prefix) is not found, and there is no setting that names one. A PATH lookup would resolve to a shim whose binary can change between two runs, and the runtime GitAegis reports has to be the runtime that actually runs.

  4. Git LFS is a separate install.

    GitAegis reads LFS status, accounts for missing objects, reads locks, and fetches, but only when git-lfs is present. Without it, the LFS surfaces say LFS is not installed rather than showing nothing or showing wrong numbers.

    shell
    brew install git-lfs
    git lfs install
  5. GitAegis tells you at launch.

    If Git is missing, unreadable, or below the floor, GitAegis says so on startup and names the newest Git it found and the path it found it at. It does not open a repository and then fail partway through an operation.

At launch: probe four absolute paths, in order

  1. /usr/bin/git
  2. /opt/homebrew/bin/git
  3. /usr/local/bin/git
  4. /opt/homebrew/opt/git/bin/git

PATH is never consulted. The first Git at or above 2.38.0 wins.

Found one

GitAegis runs that Git, with your SSH configuration and your keychain credentials.

Found none at or above the floor

GitAegis says so on startup, naming the newest Git it found and the path it found it at. No repository opens.

The check runs at launch, before any repository opens, never partway through an operation.

Verifying a download, and what verification proves

Two independent checks, in this order, and one honest paragraph about what passing both still does not tell you.

What the two checks prove

The checksum proves you got the bytes that were published. Compare the SHA-256 of your download against the value published with the release. A mismatch means a corrupted or substituted file. Delete it.

The signature proves the bytes came from us. On macOS that is codesign and spctl, checked against a Developer ID certificate and Apple’s notary service: an anchor held by Apple rather than by us.

shell
shasum -a 256 ~/Downloads/GitAegis.dmg

codesign --verify --deep --strict --verbose=2 /Applications/GitAegis.app
spctl --assess --type execute --verbose=4 /Applications/GitAegis.app

What they do not prove

A valid checksum and a valid signature confirm origin and integrity. They do not audit the code, and they do not mean a release is free of bugs.

If you fetch a checksum file and its signature from the same compromised host, both will agree with each other and with nothing else. That is why the macOS checks anchor to a platform certificate authority rather than to a file we serve.

If a check fails, tell us at security@gitaegis.com, with the URL you downloaded from, the checksum you computed, and the verification output.

Download questions

GitAegis keeps its own data in ~/Library/Application Support/<GitAegis application id>. Your repositories stay where you put them.

Free edition · No account required

A recovery capsule before every risky Git operation.

You see the exact commands before they run, and the operation is refused if the capsule cannot be written.

Requires Git 2.38.0 or newer, already installed.

Every risky operation, in this order

  1. Previewthe exact commands, shown before anything runs
  2. Capsulerefs, index, staged and working changes, untracked files, operation state: written to disk first
  3. Executethe commands as shown, or not at all
  4. Journalplan, commands, capsule id, outcome
No capsule, no operation. Restore plans, previews, and takes its own capsule.