Troubleshooting
Common issues and how to fix them
When something feels off, the first place to look is the Git Activity Log — GitBor's record of the git commands it ran. That alone usually explains what's wrong.
Git Activity Log
The indicator in the toolbar shows how many git operations are in flight. Click it to open the current repository's log. Each entry contains:
- The raw command (e.g.
git log --oneline …) — with a Copy command button. - stdout and stderr (long output is truncated with a marker).
- Exit code, status (success / warning / error), and duration in milliseconds.
- The working directory the command ran in.
Use Clear history to reset the list.
Common issues
Risky root (home, drive, system folders)
If you open your home folder, a drive root, C:\Windows / Program Files (and macOS/Linux equivalents), the repository opens. There is no warning dialog: GitBor quietly disables the working-tree file watcher (only .git stays watched) and simplifies git status so the UI does not freeze. Refresh manually with F5. A node_modules folder by itself is not on this list — inside a normal repo the watcher simply ignores it.
Commit graph takes a long time to build
Large repositories (tens of thousands of commits) take a few seconds to compute the graph on first open; later switches to that tab are instant because the graph is cached. If you're waiting too long, check the Git Activity Log to see whether a long fetch is running in parallel.
Stale .git/index.lock
If GitBor (or another client) crashed mid-operation, an index.lock can be left in .git/. A lock older than ~15 seconds is deleted automatically when the repo opens. A fresh lock (another live git) is left alone — the preflight dialog offers Remove index.lock and lists processes, or remove it manually:
rm .git/index.lock
AI key saved without encryption
When you save an AI key, GitBor encrypts it via the system keychain (Windows DPAPI, macOS Keychain, Linux libsecret). If the keychain isn't available (often headless Linux without libsecret), the key is still saved — just unencrypted; that's safer than losing it. You can check ai-config.json in GitBor's user-data folder: a value starting with plain: means encryption didn't kick in.
White screen or frozen UI
GitBor catches its own UI errors and shows a "Something went wrong" screen with a Reload UI button. If that didn't appear, press Ctrl+R to reload the UI without losing data. If even that doesn't help, close and reopen the app — your repository changes are on disk regardless of GitBor's state.
Git not found at startup
If Git isn't installed (or isn't on PATH), GitBor prompts at startup with Download Git and Specify Git Path. Point it at your git executable and restart.
Where are the logs
The production build deliberately doesn't write detailed logs to the console — your paths and SHAs shouldn't leak via DevTools. If a developer asks for diagnostics, ask them how to collect logs in dev mode. For AI-specific issues, enable debug logging in AI Settings → Debug (ai-debug.log).