git status 가 먼저 읽는 dashboard
진지한 workflow 에서 가장 많이 치는 Git 명령은 git status 야. 자주 쳐 — stage 전, 편집 후, 어디까지 했는지 까먹었을 때, 뭔가 이상할 때. 세 영역 진실을 한 번에 알려주는 dashboard 야: 뭐가 staged, 뭐가 수정됐지만 staged 아닌지, 뭐가 untracked, 어떤 branch 인지, remote 보다 얼마나 앞서거나 뒤졌는지.
기본 git status 출력은 친절하고 verbose — 배울 땐 좋아. short 버전 git status -s 는 파일당 두 글자 열 두 개. 왼쪽 = index 상태. 오른쪽 = working-tree 상태. M_ 은 staged modification + 추가 변경 없음. _M 은 modified 인데 stage 안 됨. MM 은 staged 됐고 그 후 또 modified (commit 하면 옛 version 들어감). A_ 는 staged new file. ?? 는 untracked. 이 글자들 익숙해지면 status 가 한 문단이 아니라 한 눈에 들어와.
daily 용으로 status 를 업그레이드하는 flag 두 개. --branch (or -b) 는 현재 branch 와 upstream 비교를 보여줘. --ahead-behind 는 default 로 켜져 있어. 팀 workflow 에선 "Your branch is ahead of 'origin/main' by 2 commits" 같은 줄을 자주 봐 — push 하라는 dashboard 신호야. git status --short --branch 함께가 muscle memory 에 추천 mode.
숨은 함정: git status 는 다른 branch 에만 있는 commit 은 말 안 해. uncommitted 작업 둔 채 feature branch 에서 떠나서 main 에서 status 했으면 깨끗해 보여. 작업은 멀쩡해 — 다른 branch 위에 있어 — 근데 dashboard 가 경고 안 해. multi-branch 시야가 필요하면 git branch -vv.