Troubleshooting

Atlas error: Git is not installed

Updated 6 min read

Atlas fails with "Git is not installed" because Project.initGit checks `which("git")` before running `git init --quiet`, and that lookup found no git binary on the PATH of the shell that launched Atlas. The fix is to install git and make sure it is on that PATH, then re-run. If git is present but init still fails, Atlas throws git's own stderr, and a directory permissions problem is the most common cause behind "Failed to initialize git repository".

Why does Atlas say Git is not installed

Atlas says "Git is not installed" because Project.initGit runs 1 `which("git")` check before it ever calls `git init --quiet`, and that lookup returned nothing. The check inspects the PATH of the shell that launched Atlas, so a git binary invisible to that PATH does not count.

The order matters. Atlas does not attempt `git init --quiet` and then interpret a cryptic failure. Atlas asks first, with a plain `which("git")` lookup, and refuses early with a clear message if git is absent. That design makes the error trustworthy: when Atlas says git is not installed, the binary genuinely was not resolvable on PATH at launch time. Atlas reads git branches, status, and diffs, and can stage and create commits on your behalf, so a working git is a hard prerequisite rather than an optional extra. Without it, project initialization cannot proceed.

How to fix Git is not installed in Atlas

Fix the Atlas "Git is not installed" error in 2 steps: install git, then make sure it is on the PATH of the shell that launches Atlas. Re-run afterward. The check is a plain `which` lookup, so a shell-only alias will never satisfy it.

The alias trap catches people constantly. A function or alias defined in a shell rc file makes `git` work when you type it, but `which("git")` resolves a real executable on PATH, and an alias is not one. The same applies to a git that is installed for a different user, installed inside a container the Atlas process cannot see, or installed under a PATH entry that your login shell exports but the process launching Atlas does not. Install a real git binary, confirm the PATH the Atlas process inherits actually contains its directory, and start Atlas again from that shell.

What to do when git is installed but Atlas init still fails

When git is installed but Atlas project init still fails, read the stderr in the message. Atlas Project.initGit throws git's own stderr on any non-zero exit from `git init --quiet`, and in 2026 a directory permissions problem is the most common thing that stderr names.

The stderr is the real diagnostic, and a permissions problem on the directory is the common cause. If the process running Atlas cannot write to the target directory, `git init --quiet` exits non-zero and git says so plainly. Check ownership and write permissions on the project directory before changing anything else. Also verify you are not inside a directory that is already a repository owned by another user, which produces its own git failure. Treat the generic "Failed to initialize git repository" line as a fallback, not as the diagnosis: the stderr above it is where the answer lives.

How to verify the Git is not installed fix worked

Verify the Atlas fix by re-running project initialization from the same shell that failed. Success means both steps in Project.initGit pass: the `which("git")` lookup resolves, and `git init --quiet` exits 0 rather than throwing git's stderr or the generic "Failed to initialize git repository" message.

Verify from the same shell and the same working directory that produced the original error, because PATH differs between login shells, IDE terminals, and service managers, and a fix that works in one may not apply to the other. If "Git is not installed" still appears, the Atlas process is not seeing the git you installed, and the PATH it inherits is the thing to inspect. If the message has changed to git stderr instead, the `which` check now passes and you have moved on to the second failure mode, which is usually directory permissions.

Why Atlas requires git at all

Atlas requires git because Atlas snapshots file changes as git patches so edits can be diffed and rolled back, and Atlas reads git branches, status, and diffs and can stage and create commits on your behalf. Without a git binary on PATH in 2026, those 2 capabilities have nothing to run against.

Git is load-bearing in Atlas, not decorative. Atlas computes a unified diff for every file edit and surfaces it for approval before writing, and the rollback story depends on git patches being written as work proceeds. That is why Project.initGit checks for git up front with `which("git")` rather than discovering the absence halfway through an edit. Installing git is therefore not a workaround for an error message; it is a prerequisite for the review and rollback behavior that makes Atlas safe to run against a real codebase.

How to fix it

  1. 01Install git and make sure it is on the PATH of the shell that launches Atlas.
  2. 02Re-run; the check is a plain `which` lookup, so a shell-only alias will not satisfy it.
  3. 03If git is installed but init fails, read the stderr in the message: a permissions problem on the directory is common.
  4. 04Verify you are not inside a directory that is already a repo owned by another user.

Frequently asked questions

How do I fix "Git is not installed" in Atlas?
Install git and make sure it is on the PATH of the shell that launches Atlas, then re-run. Atlas Project.initGit uses a plain `which("git")` lookup, so the binary must be resolvable on that PATH.
Why does Atlas say git is not installed when I have git?
The Atlas check is a plain `which` lookup, so a shell-only alias or function will not satisfy it, and neither will a git that is not on the PATH the Atlas process inherits. Install a real binary and confirm it resolves on PATH.
What does "Failed to initialize git repository" mean in Atlas?
"Failed to initialize git repository" is the generic fallback Atlas shows when `git init --quiet` exits non-zero. Read the git stderr in the message; a permissions problem on the directory is common.
Can an alias make git work for Atlas?
No. Atlas Project.initGit resolves git with `which("git")`, which looks for a real executable on PATH. A shell-only alias will not satisfy the check even though typing git works in your terminal.
Atlas git init fails with a permissions error, what now?
Check ownership and write permissions on the project directory. Atlas throws git's own stderr on a non-zero exit from `git init --quiet`, and a permissions problem on the directory is the common cause.
Does Atlas need git to run at all?
Yes. Atlas snapshots file changes as git patches so edits can be diffed and rolled back, and it reads git branches, status, and diffs. Project initialization checks for git before it runs `git init --quiet`.
Why does Atlas fail inside a directory that is already a repo?
Verify you are not inside a directory that is already a repository owned by another user. Git exits non-zero in that case, and Atlas surfaces git's stderr rather than the "Git is not installed" message.

Try Atlas in your terminal

The terminal-native AI coding agent. Free core, single binary.

Install Atlas

Related guides

Atlas with Mixtral 8x22B (local via Ollama): The 80GB Question in 2026

Mixtral 8x22B (local via Ollama) in Atlas for 2026: an 80GB pull, Free (self-hosted), a 64,000 token window, and sparse routing across 8 experts of 22B.

Atlas with Llama 3.3 70B Instruct (Meta Llama API) in 2026

Llama 3.3 70B Instruct (Meta Llama API) in Atlas for 2026: 128,000 tokens of context, an OpenAI-compatible endpoint, and a 4,096 token output ceiling to plan around.

Atlas with Mixtral 8x7B: Running the Original Sparse MoE in 2026

Mixtral 8x7B put sparse mixture-of-experts on the map in December 2023. In Atlas it gives 32,000 tokens at $0.70 / 1M input tokens. Setup, limits, and honest fit.

Atlas vs Windsurf: Terminal AI Coding Agents in 2026

Atlas and Windsurf offer distinct AI coding experiences in 2026. Atlas provides a terminal-native TUI with permission-gated tools, while Windsurf features an in-editor live preview and a dedicated GUI.

Atlas with Gemma 4 31B (Ollama): the Flagship Gemma 4 Tag in 2026

Gemma 4 31B (Ollama) is the largest Gemma 4 tag: 20GB weights, a 256K tokens (262,144) context, Free (self-hosted), plus a 31b-coding-mtp-bf16 variant. Atlas setup.

Atlas with GPT-OSS 120B (hosted): picking the right host in 2026

Run Atlas on GPT-OSS 120B (hosted) in 2026. Identical Apache weights cost $0.037 per Mtok on DeepInfra and $0.35 on Cerebras, a 9.5x input spread. Full host guide.

Atlas with Qwen3 Coder Flash: 1M Context at $0.30 per Mtok in 2026

Qwen3 Coder Flash in Atlas: 1M tokens (1,000,000) of context, 65,536 token output, $0.30 per Mtok input and $1.50 per Mtok output, tuned for fast edit loops.

Atlas with Devstral Small 2505: The Original Agent-First Model in 2026

Devstral Small 2505 started Mistral's Devstral line in May 2025: 128,000 tokens at $0.10 / 1M input tokens. Atlas setup, why it was superseded, and when to pin it.

Browse this resource hub