๐Ÿ“‚ Item status indicators

July 10, 2026 ยท View on GitHub

Each repository card shows icons and badges reflecting its state:

General Icons

  • ๐Ÿ“Œ (or [P]) โ€” Pinned repository.
  • โ˜… (or *) โ€” Starred / favorite repository.
  • โ— git (or G clean) โ€” Clean Git repository.
  • โ—‹ dir (or o dir) โ€” Directory exists but is not a git repository.
  • โœ• missing (or x missing) โ€” Path does not exist or is not a directory.

Compact Status Suffixes

For git repositories, the status indicator shows compact counts for any non-zero values:

SuffixMeaningColour
N+N files staged for commitCyan
N!N files modified but not stagedYellow
N?N untracked filesMuted
Nโœ•N conflicted filesRed / Danger
Nโ†‘N commits ahead of upstream (needs push)Bold Green
Nโ†“N commits behind upstream (needs pull/fetch)Bold Yellow

When all counts are zero, the indicator shows โ— clean. Press ? or h at any time to see the legend inside the app.

โš  Staging Divergence (โš  PARTIAL)

When a repository has both staged changes and unstaged changes (modified or untracked) coexisting simultaneously, Gitwig will display a yellow โš  PARTIAL warning badge next to the repository name on its card.

Active Repository State Badges

When a repository has an active Git operation or special state, Gitwig displays a colored status badge:

  • โœ“ CLEAN โ€” No active Git state/operation.
  • โš  MERGE โ€” Active Merge session (contains conflicts).
  • ๐Ÿšง REBASE โ€” Active Interactive/Normal Rebase.
  • โšก CHERRY โ€” Active Cherry-pick operation.
  • โšก REVERT โ€” Active Revert operation.
  • ๐Ÿ” BISECT โ€” Active Bisect session.
  • ๐Ÿ“ฌ APPLY โ€” Applying patches (mailbox).

Git LFS Badges ([LFS])

Files tracked by Git LFS will display a blue [LFS] badge next to their names in:

  • Staged / Unstaged / Conflicts file panels (Workspace tab).
  • Changed files lists (Commit Details / Inspect window).
  • Repository Files Tree list (Files tab).
  • Stashed Files list (Stashes tab).

Global Summary Header Bar

The high-level dashboard stats at the top of the homepage show:

  • repos: Total number of configured repositories. If stale projects are hidden via configuration (show_stale_projects), the dashboard shows <visible>/<total> repositories, indicating how many are hidden due to being stale.
  • dirty: Repositories with uncommitted/unstaged changes.
  • ahead: Repositories with local commits ahead of their remote tracking branch.
  • stale: Repositories where the last commit is older than the configured threshold (default is 1 month; configurable via stale_threshold_months in settings).

Auto-Refresh & Manual Refresh

Items support ~ and ~/... expansion, so ~/code/gitwig resolves to your home directory.

Gitwig automatically refreshes all repository statuses in the background every 10 seconds using non-blocking background threads, ensuring the home dashboard is always live and up-to-date. You can also press R to manually refresh the selected item's status immediately (e.g. after running a git command externally); the status bar briefly flashes Refreshed to confirm.