macOS · Free edition, no account required
Download GitAegis
Requires Git 2.38.0 or newer, already installed · macOS 12 or later · Apple Silicon and Intel · No account, no sign-in, no telemetry
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
universalmacOS 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.
Check what you have.
If this prints
git version 2.38.0or higher, you are done.shellgit --versionOn 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.
shellbrew install git git --versionOn 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.
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/gitcomes first in your shell, and noPATHreordering 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. APATHlookup 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.Git LFS is a separate install.
GitAegis reads LFS status, accounts for missing objects, reads locks, and fetches, but only when
git-lfsis present. Without it, the LFS surfaces say LFS is not installed rather than showing nothing or showing wrong numbers.shellbrew install git-lfs git lfs installGitAegis 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
/usr/bin/git/opt/homebrew/bin/git/usr/local/bin/git/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.
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.
shasum -a 256 ~/Downloads/GitAegis.dmg
codesign --verify --deep --strict --verbose=2 /Applications/GitAegis.app
spctl --assess --type execute --verbose=4 /Applications/GitAegis.appWhat 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
- Previewthe exact commands, shown before anything runs
- Capsulerefs, index, staged and working changes, untracked files, operation state: written to disk first
- Executethe commands as shown, or not at all
- Journalplan, commands, capsule id, outcome