git version-control cheat-sheet workflow dev-reference

Git 必須チートシート:コマンド、ワークフロー、ベストプラクティス

開発者のための包括的な Git チートシート。git add、commit、push、branch、merge、rebase を明確な例と FAQ でマスターしましょう。

2026-04-12

Git 必須チートシート:コマンド、ワークフロー、ベストプラクティス

Git は、世界で最も広く使用されているバージョン管理システムです。個人開発者であっても、大規模なチームの一員であっても、Git をマスターすることは、コード履歴の管理と効果的なコラボレーションに不可欠です。

一般的な Git コマンドとワークフローのクイックリファレンスとして、このチートシートを活用してください。


1. 基本的なワークフロー

変更を加え、リポジトリに保存するコアサイクル。

コマンド 説明
git init ローカルに新しい Git リポジトリを初期化する git init
git clone リモートリポジトリのコピーを作成する git clone [url]
git add 次のコミットのために変更をステージングする git add . (すべて追加)
git commit ステージングされた変更を履歴に保存する git commit -m "feat: login"
git status 作業ディレクトリの状態を表示する git status
git push ローカルのコミットをリモートにアップロードする git push origin main
git pull リモートから変更を取得してマージする git pull origin main
git fetch リモートから変更をダウンロードする(マージしない) git fetch origin

2. ブランチとマージ

ブランチを使用すると、異なる機能や修正を分離して作業できます。

  • ブランチ作成: git branch [name]
  • ブランチ切り替え: git checkout [name] (または git switch [name])
  • 作成と切り替え: git checkout -b [name]
  • ブランチマージ: git merge [name] ([name] を現在のブランチにマージ)
  • リベース: git rebase [name] (コミットを [name] の先端に再適用)
  • ブランチ削除: git branch -d [name]

3. 変更の取り消し

間違いを修正したり、以前の状態に戻したりする方法。

  • コミット打ち消し: git revert [commit-hash] (変更を打ち消す新しいコミットを作成)
  • リセット (Soft): git reset --soft HEAD~1 (コミットを取り消し、変更をステージングに残す)
  • リセット (Hard): git reset --hard HEAD~1 (コミットを取り消し、変更も削除する!注意)
  • スタッシュ: git stash (未コミットの変更を一時的に隠す)
  • スタッシュ戻し: git stash pop (隠した変更を戻す)

4. 検査とデバッグ

履歴の表示やバグの発見のためのツール。

コマンド 説明
git log コミット履歴を表示する
git diff コミット間または作業ツリーの差異を表示する
git blame [file] ファイルの各行を誰が変更したかを表示する
git show [commit] 特定のコミットの詳細を表示する
git bisect 二分探索を使用してバグを導入したコミットを特定する

よくある質問 (FAQ)

Q: Merge (マージ) vs Rebase (リベース):どちらを使うべきですか?

A: Merge は新しい「マージコミット」を作成し、完全な履歴と時系列を保持します。Rebase はコミットをターゲットブランチの先端に移動させることで履歴を書き換え、クリーンで線形な履歴を作成します。経験則: 公開されているブランチではリベースせず、プッシュ前のローカルな整理に使用してください。

Q: マージコンフリクトを修正するにはどうすればよいですか?

A: コンフリクトが発生すると、Git がファイルをマークします。1. ファイルを開き、<<<<<<<=======>>>>>>> を探します。 2. 必要なコードを残すように編集します。 3. git add [file] を実行します。 4. git commit を実行します。

Q: "detached HEAD" (分離された HEAD) とは何ですか?

A: ブランチではなく、特定のコミットやタグをチェックアウトした状態を意味します。どのブランチにも乗っていない状態です。新しいブランチを作成せずに別の場所に移動すると、新しいコミットは失われます。変更を保存するには git checkout -b new-branch-name を実行してください。

Q: .gitignore のベストプラクティスは何ですか?

A: 環境変数 (.env)、ビルド成果物 (dist/build/)、依存関係フォルダ (node_modules/)、OS 固有のファイル (.DS_Store) は常に無視してください。使用している言語やフレームワークに適した公式テンプレート(GitHub など)を使用することをお勧めします。


Tool3M の関連情報

  • ホーム: 開発効率を高めるためのツールやリファレンスをもっと見つけましょう。