「とりあえずコードを読む」は最悪のスタートだ
新しいプロジェクトにアサインされたとき、あなたは何をするか。
おそらく多くの日本人エンジニアは「とりあえずリポジトリをcloneして、主要ファイルを開く」という行動を取るはずだ。しかしこれは、地図も持たずに見知らぬ都市の路地裏に飛び込むのと同じである。
Hacker Newsで話題となった「Git commands I run before reading any code」という記事は、まさにこの問題に切り込んでいる。著者が提唱するのはシンプルな原則だ。コードを読む前に、Gitのログや構造から「プロジェクトの歴史と意図」を読み解け——というものだ。
これは単なるテクニック論ではない。エンジニアの認知負荷とオンボーディングコストに直結する、組織的な問題である。
Gitは「コードの履歴書」である
著者が実践しているアプローチの核心は、コードそのものより先に「なぜそのコードが存在するか」を理解することにある。具体的には以下のようなコマンド群が有効とされる。
```bash
リポジトリ全体の変更の流れを俯瞰する
git log --oneline --graph --all
最も変更頻度が高いファイルを特定する
git log --pretty=format: --name-only | sort | uniq -c | sort -rg | head -10
特定期間の変更者・変更量を把握する
git shortlog -sn --since="6 months ago"
直近の大きな変更を確認する
git log --stat -10
```