Skip to content

Status, Diff & Log

Branch status for the current repository, designed as a single command for agents to get full working-tree and branch context. It prints unstaged files, staged files, and the last 10 commits — each with a compact relative timestamp, a pushed/local remote marker, and its changed files inline with (+added -deleted) line counts.

Terminal window
dot git-status # status summary
dot git-status --diff # also print full unstaged and staged diffs
dot git-status --branch-diff # also print the full diff vs the default branch

It substitutes running these separately: git status, git diff --stat / git diff --numstat, git diff --cached --stat, git log --oneline --stat, and git log @{upstream}..HEAD (ahead/pushed check). The flags combine. --branch-diff measures from the merge base, so committed and uncommitted changes both show, and errors on the default branch where that range is empty.

The diff / repo watcher view. Without flags it opens the interactive TUI showing managed repos with changes, including fetched unpushed/incoming commit checks. The alias dot diff remains for compatibility.

Terminal window
dot git-diff # interactive TUI
dot git-diff --raw # text summary of repos with changes
dot git-diff --bar-json # JSON for status bars and shell modules
dot git-diff --tab other # focus the Other pane in the TUI
dot git-diff --list-changed # changed repos as name|path rows
dot git-diff --list-all # all tracked repos as name|path rows

Press Enter on a repo to launch lazygit via suspend/resume.

Recent commit history across the same tracked repos as dot git-diff, sorted by latest commit activity.

Terminal window
dot git-log # interactive TUI
dot git-log --raw # text summary of recent commits