Skip to content

darkbluellc/git-status-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Git Status Dashboard

A dependency-free bash/zsh script that shows a live, one-screen view of the git status of many repositories at once — current branch, whether you have commits to push or pull, and any staged / unstaged / untracked changes.

No watch, no extra tools required (handy on macOS, where watch isn't installed by default).

Usage

./git-status-dashboard.sh <repo> [<repo> ...]

Globs work

Because the script just takes a list of directories, your shell's globbing expands to multiple repos automatically:

# every immediate subdirectory of ~/git
./git-status-dashboard.sh ~/git/*/

# every repo under two parent folders
./git-status-dashboard.sh ~/git/dbllc/*/ ~/work/*/

# mix globs and explicit paths freely
./git-status-dashboard.sh ~/git/dbllc/*/ ~/dotfiles

The trailing slash (*/) restricts the glob to directories. Non-git or missing directories are shown with a clear message rather than skipped, so a too-broad glob is harmless.

Options

Flag Description
-n, --interval SECONDS Refresh interval for the live view (default: 2).
-1, --once Render once and exit (no live loop). Good for scripts/logs.
-h, --help Show usage.
./git-status-dashboard.sh -n 5 ~/git/*/     # refresh every 5s
./git-status-dashboard.sh -1 repoA repoB    # print once and exit

Press Ctrl-C to quit the live view (the cursor is restored on exit).

What each row shows

fullsend-native        main ↑1   ●2 staged ✚1 changed …1 untracked
web                    feature/login ↑3 ↓1   clean
api                    detached@a1b2c3d   no upstream   ⚑1 stash
  • Branch (blue) — or detached@<sha> when in a detached-HEAD state.
  • Tracking vs upstream:
    • ↑N — N commits ahead (waiting to be pushed)
    • ↓N — N commits behind (waiting to be pulled)
    • in sync — level with upstream
    • no upstream — branch has no tracking branch configured
  • Working tree:
    • ●N staged — changes staged for commit
    • ✚N changed — modified but unstaged
    • …N untracked — new, untracked files
    • ⚑N stash — entries in the stash
    • clean — nothing to do

Notes

  • Status is read locally only — the script does not run git fetch, so ahead/behind counts reflect your last fetch or pull.
  • Colors auto-disable when output is piped to a non-terminal, so ./git-status-dashboard.sh -1 ~/git/*/ > status.txt stays plain text.

About

No description, website, or topics provided.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages