Slide 1

Slide 1 text

AI時代だからこそ推したい! Gitコマンド再入門 2026/10/03 PHPカンファレンス愛媛 2026 ムナカタ(@kata_kata_1478)

Slide 2

Slide 2 text

自己紹介 名 前:ムナカタ 仕事:Webエンジニア / 技術広報 ● 愛媛に初めて来ました! ● Xのアイコンは愛媛みかんの「****」です @kata_kata_1478

Slide 3

Slide 3 text

GitをGUIで操作できるの便利! GitをCUIで使うのも好き 最近ではGitをコマンドで使う価値が高まっている かも?、という話をします

Slide 4

Slide 4 text

Gitをコマンドで使うメリット ● 問題が起きたとき、原因を切り分けやすい ● GUIより細かい操作までできる ● 慣れると操作が速い ● なんか、かっこいい

Slide 5

Slide 5 text

Gitコマンドの知識は、 AIと進める開発に活かせる

Slide 6

Slide 6 text

AIコーディングエージェントはGitを操作できる ● AIによるGit操作の実行許可の判断 ● AIの挙動を制御するハーネス設計 Gitコマンドの知識が役にたつ場面が増えた

Slide 7

Slide 7 text

AIと開発する今だからこそ覚えたい 私の推しGitコマンドを紹介します

Slide 8

Slide 8 text

git reflog HEADの移動履歴を閲覧できるコマンド。コミットをresetされても履歴が あれば復旧できる

Slide 9

Slide 9 text

ケース1 🤖 実装が完了しました わーい

Slide 10

Slide 10 text

ケース1 🤖 実装が完了しました わーい ……あれ 「git reset --hard〜」されてる……??

Slide 11

Slide 11 text

ケース1 🤖 実装が完了しました わーい ……あれ 「git reset --hard〜」されてる……?? 実装してた内容が消えた??!

Slide 12

Slide 12 text

git reflog HEADなどの参照の更新履歴を確認できるコマンド。 コミットをresetされても、reflogに履歴が残っていれば以前の状態に戻せる $ git reflog a1b2c3d (HEAD -> feature/search) HEAD@{0}: reset: moving to HEAD~2 9f8e7d6 HEAD@{1}: commit: 検索結果にページネーションを追加 ← ここに戻したい 5c4b3a2 HEAD@{2}: commit: 検索条件のバリデーションを追加 a1b2c3d HEAD@{3}: checkout: moving from main to feature/search $ git reset --hard HEAD@{1} # reset される直前の位置に戻す HEAD is now at 9f8e7d6 検索結果にページネーションを追加 AIが暴走する時に備えてreflogなどの復旧手法を覚えておくと安心 ※事故防止のため、AIエージェントに許可するGit操作や権限を見直すことも大事。

Slide 13

Slide 13 text

git worktree 1つのリポジトリから、複数の作業ディレクトリを作れる ブランチごとにディレクトリを分けて、同時並行で作業できる

Slide 14

Slide 14 text

ケース2 バグ修正と新機能の実装、AIに同時に頼みたいな あと、レビュー中のPRもローカルで動かしたい 複数ディレクトリ切って リポジトリclone する?

Slide 15

Slide 15 text

git worktree 1つのリポジトリで、複数のブランチを別々のディレクトリに同時にチェックアウトできる $ git worktree add {追加する作業ディレクトリ } {そのディレクトリで使うブランチ } ブランチごとに別ディレクトリが作成される Claude CodeもGit worktreeをネイティ ブサポートしている AIを複数動かす前提で作業を並列で 進めやすくなる

Slide 16

Slide 16 text

GitHub CLIの活用 GitHub公式が提供しているCLIツール ghコマンドでPRの作成や確認をターミナルで完結できる

Slide 17

Slide 17 text

GitHub CLIの活用 ghコマンドでPRの作成や確認をターミナルで完結できる $ gh pr create # PRを作る $ gh pr list # PRの一覧を見る $ gh pr view 123 # PRの説明やステータスを見る レビューの負荷を下げるために活用している おすすめの gh コマンドを2つ紹介します

Slide 18

Slide 18 text

gh pr create --attach 画像や動画をアップロードして、PRの本文に埋め込める

Slide 19

Slide 19 text

gh pr create --attach 画像や動画をPRの本文にアップロードできる機能 $ gh pr create --attach {添付するファイル} 画像を添付するPRの例 フロントの改修などでは変更点を PR上で画像で確認できるとレビューが楽になる CLIでPRに画像を添付できるので、 AIエージェントにPlaywright などで スクショを撮らせ、PR作成までを任せられる

Slide 20

Slide 20 text

gh stack 大きな変更を、積み重ねた小さなPRに分けて扱える 下のPRをマージしたら、残ったPRも自動で rebase・付け替えされる

Slide 21

Slide 21 text

gh stack ※ Stacked Pull Requests は Public Preview 依存するブランチを積み重ねて、大きな変更を複数の小さなPRとして扱えるコマンド 作成方法 $ gh extension install github/gh-stack $ gh stack init feature/x-migration $ gh stack add feature/x-api $ gh stack add feature/x-ui $ gh stack submit # gh stack をインストール # 最初のブランチでスタックを開始 # その上にブランチを積む # さらに上に積む # 全ブランチを push して、PRをまとめて作成

Slide 22

Slide 22 text

gh stack gh stackで作ったPRの例 ブランチを積むことは、Gitだけでも可能 main └ feature/x-migration └ feature/x-api └ feature/x-ui Migration追加 API実装 UI実装 ただし gh stack を使うとPR同士の依存関係を自動で管 理できる 下のPRをマージしたあとも残りのブランチの依存関係やrebaseを管理してくれる AIによる開発ルールにStacked PRを作る運用を入れておけば、PRを gh-stack にはAIエージェント向けの公式Skillも用意されている い レビューしやすい粒度を保ちやす

Slide 23

Slide 23 text

まとめ ● AI時代だからこそ、Gitを、コマンドでも使うことはおすすめ! ○ AIエージェントのハーネス設計にも、トラブル時の復旧にも役立つ。 ○ 紹介したコマンド ■ git reflog:HEADの移動履歴を見て、reset前の状態へ戻せる ■ git worktree:ブランチごとに作業ディレクトリを分けて、並行で作業できる ■ gh pr create --attach:画像や動画をPRの本文に埋め込める ■ gh stack:大きな変更を、積み重ねた小さなPRに分けて扱える ● もちろんGUIも便利 ○ 差分やコミットグラフを見るときは、GUIのほうが見やすい

Slide 24

Slide 24 text

🍊 ご清聴ありがとうございました 🍊