Repository navigation
Git Console
Nibtree does its work by running git commands, the same ones you would type in a terminal. The Git Console shows them: every command, the repository it ran in, how long it took, whether it worked, and what git printed.
Use it when something surprises you. If a push fails or a pull does something odd, the console shows the exact command and git's own message, so you can repeat it in a terminal or paste it into a bug report.
The Git Console is off by default, because most people never need it and keeping a list of commands costs memory.
- Open Settings (Cmd+,) and choose the Git section.
- Turn on Git Console. The hint says it shows as the Git Console tab in the bottom panel, next to Terminal.
- A Show Git Console button appears under the hint while a folder is open. Click it to open the console right away.

While it is off, nothing is recorded, the tab is hidden, and the menu items below are hidden too. Turning it off again throws the list away.
With the switch on, any of these opens the console:
- Git > Show Git Console in the menu bar.
- View > Git Console. It has a check mark while the console is on screen; choose it again to hide the panel.
- The Git Console tab of the bottom panel, next to Terminal and Shelf (and Run, once you ran a script). See Terminal for the panel.
The console only lists commands that ran after you turned it on.

Each row is one git command, oldest at the top and newest at the bottom:
- the time it started, like
14:03:27; - the repository name;
- the command, for example
git push --set-upstream origin main; - how long it took, like
120 msor2.35 s; - a status dot: green when git finished with exit code 0 (the number git hands back when all went well), red when it failed, and pulsing while it still runs. Hover the dot to read "Exit code 0" or the reason it failed.
Click a row to open it. Below the row you see what git printed: normal output first, then error output, then the reason when git could not start at all. Long output scrolls inside its box. Nibtree keeps only the start of a very long output and says so with a note like "(output cut: only the start is kept)". Click the row again to close it.
The list follows new commands as they arrive. Scroll up to read older ones and it stays where you are; scroll back to the bottom to follow again.
Only real git commands show up. Nibtree reads most things (status, the log) directly from the repository without running git, so those never appear here.
-
Filter commands at the top narrows the list. Type a few words: a row matches when every word is in its command or its repository name, so
push originorstorefront fetchboth work. The count next to it reads like "3 of 40 commands". - Right-click a row for Copy Command, Copy Output and Show Output (or Hide Output). Copy Command quotes the arguments, so you can paste it into a terminal as it is.
- Clear empties the list, also in the app's memory.
Commands and output can contain passwords or tokens, for example in a remote URL like https://user:password@host/repo.git. Nibtree masks them with *** before anything is stored: passwords in URLs, tokens used as a URL user name, values of options such as http.extraheader, Bearer and Basic headers, and GitHub and GitLab tokens (ghp_..., github_pat_..., glpat-...). The list lives only in memory and is gone when you quit.
The console keeps the last 500 commands. Each one keeps at most 16 KB of normal output and 16 KB of error output, and all of them together at most 4 MB. Older commands drop off first.
These pages are generated from docs/wiki. To correct something, open a pull request against the source file; edits made here are overwritten.
Using Nibtree
- Getting Started
- Welcome Screen
- Workspaces
- Files Panel
- File Operations
- File Icons
- Rounded Panels
- Editor and Tabs
- Pin Reorder and Wrap Tabs
- Single Tab Title
- Split Editor
- New File and Unsaved Changes
- Unload Hidden Tabs
- Editing Code
- Code Appearance
- Markdown Editor
- Image and PDF Preview
- Search Everywhere
- Recent Files
- Navigation Bar
- Find and Replace
- Changes and Commits
- Sign In Prompts
- Commit Box Layout
- Repository Actions
- Commit Options
- Ignoring Files
- Diffs
- Inline Diffs
- Staging View
- Revert a Change
- Resolving Conflicts
- Merge Tool
- Blame
- History and Log
- Merge Commits
- Branches and Tags
- Branches Popup
- Remotes
- Stashes
- Shelf
- Git Menu
- Git Dialogs
- Interactive Rebase
- Worktrees
- AI Agents
- AI Tasks
- AI Usage
- Keep Computer Awake
- Submodules
- Git LFS
- GitHub
- Git Console
- Terminal
- Terminal Features
- Scripts
- Navigation
- Menus
- Settings
- Settings Search
- Color Themes
- Settings Terminal and Automation
- Settings Files
- Updates
- Status Bar and Help
- Notifications
- Memory Use
- Clear Cache
- MCP and CLI
- Git Mergetool
- Keyboard Shortcuts
- Keyboard Shortcuts Editor
- Troubleshooting
- Troubleshooting Git
Developers
- Developer Guide
- Architecture
- Project Layout
- Backend
- How Folder Watching Works
- Folder Watching Bugs We Fixed
- How Workspace Files Work
- How the Preview Scheme Works
- Backend Services
- How Terminal Features Work
- Terminal Bugs We Fixed
- Frontend
- How the Rich Markdown Editor Works
- Rich Markdown Bugs We Fixed
- Git Menu Links
- Menu Keys and Routing
- Frontend Modules
- Blame Bugs We Fixed
- Project Color And Title Bar
- One Diff View
- Diff Bugs We Fixed
- Merge Tool Layouts
- Merge Tool Bugs We Fixed
- Color Theme Bugs We Fixed
- How the Connected Diff Works
- Rounded Panels Bugs We Fixed
- Update Bugs We Fixed
- Status Bar Bugs We Fixed
- MCP and CLI Bugs We Fixed
- Repository Actions Bugs We Fixed
- How the Changes Tab Works
- CodeMirror Patterns
- How the Cursor Works
- How Editor Features Work
- How the Path Bar Works
- Commands and Events
- Settings Reference
- Commands Workspace and Changes
- Commands Branches and Remotes
- Commands History and Extras
- Commands App and Tools
- Testing
- Test Suites
- Debugging
- Debugging with MCP
- Measuring Setting Memory
- How Terminal Memory Is Measured
- How Markdown Diagrams Work
- Releases and CI
- Publishing the Wiki
- Versioning and Changelog
- Browser Version Packages
- Browser Release Checks
- Docker Image
- Platforms and Signing
- Windows Support
- Windows Bugs We Fixed
- Windows MCP and CLI
- Docs and Screenshots
- UI Library
- UI Library MCP
- UI Library Bugs
- UI Library Migration
- Contributing
How features work
- Welcome screen
- Workspaces and folders
- Files panel
- File operations
- File icons
- Editor and tabs
- Pin, reorder and wrap tabs
- Single tab title
- Split editor
- New File and unsaved changes
- Unload hidden tabs
- Editing code
- Code appearance
- Markdown editor
- Image and PDF preview
- Search Everywhere
- Recent Files
- Navigation Bar
- Find and replace
- Changes and commits
- Sign-in prompts
- Commit box layout
- Repository actions
- Commit options
- Ignoring files
- Diffs
- Inline diffs
- Staging view
- Revert a change
- Resolving conflicts
- Merge tool
- Blame
- History and log
- Merge commits
- Commit tabs
- Branches and tags
- Branches popup
- Remotes
- Stashes
- Shelf
- Git menu
- Git dialogs
- Interactive rebase
- Worktrees
- AI agents
- AI usage
- Keep computer awake
- AI tasks
- Submodules
- Git LFS
- GitHub account
- Git Console
- Back and Forward
- Integrated terminal
- Scripts tool window
- Menu bar
- Settings
- Search in Settings
- Color themes
- Rounded panels
- Updates and release channels
- Status bar and help links
- Notifications
- Memory readout and memory log
- Clear Cache
- MCP server and command line tool
- git mergetool mode