ZedのGit操作に最初戸惑ったので備忘録も兼ねて.
まだまだ慣れていないところもあるけど
公式ドキュメント(英語)を読んで整理したので、日本語でまとめる。全機能を網羅するつもりはなくて、「これは絶対知っておくべき」というMustと、「知ってると便利」なTipsに分けて書く。
まず、Gitパネルを開く
起点はGitパネル。ステータスバーのGitアイコンをクリックするか、コマンドパレットで git panel: toggle focus を叩くと開く。

ここに、
- 今のリポジトリとブランチ
- 変更されたファイルの一覧とステージング状態
- コミットメッセージの入力欄
がまとまって表示される。コマンドラインで変更を加えると、パネルにも即反映される。
Must: ステージ・コミット・プッシュの基本
ファイルをステージしてコミットする
Gitパネルでの基本的な流れはこう。
- 変更されたファイルがパネルに表示される
- ファイル横のチェックボックスをクリックしてステージする
- 下部のテキストエリアにコミットメッセージを書く
-
Cmd+Enter(macOS)/Ctrl+Enter(Linux/Windows)でコミット
「全部まとめてコミットしたい」なら、パネル上部の「Stage All」ボタンを押してからコミットするのが一番速い。個別のチェックボックスを操作する必要はない。
コミット直後に「やっぱ戻したい」ってなったとき
コミットするとパネルの入力欄の下に直前のコミットが表示される。そこにある "Uncommit" ボタンを押すと git reset HEAD^ --soft が走って、コミット前のステージ状態に戻る。コミット直後に気づいたときはこれ。

プッシュ・プル・フェッチ
Gitパネル上のボタンからでも、コマンドパレットからでも操作できる。https://zed.dev/docs/git#action-reference
| 操作 | アクション | キーバインド |
|---|---|---|
| フェッチ | git: fetch |
Ctrl+G, Ctrl+G |
| プル | git: pull |
Ctrl+G, ↓ |
| プッシュ | git: push |
Ctrl+G, ↑ |
| リベース付きプル | git: pull rebase |
Ctrl+G, Shift+↓ |
| 強制プッシュ | git: force push |
Ctrl+G, Shift+↑ |
Must: 差分を確認する(Project Diff)
「今どんな変更があるか全体を把握したい」というときは git: diff(Ctrl+G, D)でProject Diffを開く。
変更されたすべてのファイルの差分が1つのビューにまとめて表示される。しかもこれ、そのまま編集できる。差分を見ながらその場で直せるのは地味に便利。
表示スタイルは2種類から選べる。
好みで切り替えられて、settings.json で固定もできる。
{
"diff_view_style": "unified"
}
ハンク単位でステージする
差分の中でまとまった変更ブロックのことをハンクと呼ぶ。ファイル全体じゃなくてハンク単位でステージ・アンステージできる。
Must: マージコンフリクトの解消
マージ・リベース・プルでコンフリクトが起きると、ZedはGitパネルで警告アイコンを出しつつ、ファイル内のコンフリクト箇所に解消ボタンを表示してくれる。
表示される3つのボタンはこんな感じ。
- "Use [current branch]": 今いるブランチの変更を採用する
- "Use [incoming branch]": 取り込む側の変更を採用する
- "Use Both": 両方残す(現在のブランチの内容が先になる)
ボタンを押すとコンフリクトマーカーが消えて選択した内容に差し替わる。全部解消したらステージしてコミットすれば完了。
複雑なコンフリクトはファイルを直接編集してもいい。<<<<<<<、=======、>>>>>>> のマーカーを手動で消して、残したい内容だけにすればOK。
Tips: ブランチの作成・切り替え・削除
コマンドパレットから。
-
git: branch— 新しいブランチを作る -
git: switch/git: checkout branch— 既存のブランチに切り替える
削除は git: switch でブランチ一覧を開いて、削除したいブランチを選んで削除オプションを選ぶだけ。今チェックアウト中のブランチは削除できないので、先に別のブランチに移る。
Tips: Git Worktree
複数のブランチを並行して作業したいとき、スタッシュしたりリビルドしたりせずに済むのがGit Worktree。
タイトルバーのWorktreeピッカーか、コマンドパレットで git: worktree(Cmd+Ctrl+W / Alt+Ctrl+Shift+W)から操作できる。
ピッカーからできること。
- 現在のブランチ or デフォルトブランチから新しいLinked Worktreeを作成
- 既存のWorktreeに切り替える
- 既存のWorktreeを新しいウィンドウで開く
- 使わなくなったWorktreeを削除する
新しいWorktreeはデフォルトで ../worktrees 以下に作られる。場所を変えたいなら settings.json で git.worktree_directory を指定する。
新しいWorktreeはdetached HEAD状態で作成される。Worktreeに切り替えてからブランチピッカーで新しいブランチを切るか、既存ブランチをチェックアウトするのを忘れずに。同じブランチを複数のWorktreeで同時にチェックアウトはできない。
Tips: スタッシュ操作
コミットしたくない変更を一時的に退避させたいときのやつ。
-
git: stash all— ステージ済み・未ステージ両方の変更をスタッシュする -
git: stash pop— 直近のスタッシュをApplyして一覧から削除する -
git: stash apply— 直近のスタッシュをApplyするが一覧には残す -
git: view stash— スタッシュ一覧ピッカーを開く
スタッシュ一覧ピッカーから、差分の確認・Apply・Pop・削除がまとめてできる。
Tips: AIにコミットメッセージを生成してもらう
ZedはLLMでコミットメッセージを自動生成できる機能がある(ただし先に設定必要)。GitパネルのメッセージエディタにフォーカスしてからGitパネル左下の鉛筆アイコンをクリックするか、git: generate commit message(Alt+Tab / Alt+L)で起動する。
使うモデルを指定したいなら settings.json で。
{
"agent": {
"commit_message_model": {
"provider": "anthropic",
"model": "claude-haiku-4-5"
}
}
}
コミットメッセージ生成時のカスタム指示は ~/.config/zed/AGENTS.md(macOS/Linux)か %APPDATA%\Zed\AGENTS.md(Windows)に書くと反映される。
https://zed.dev/docs/git#ai-support-in-git
Tips: ファイル履歴の確認
特定ファイルのコミット履歴を見たいときはFile History。
- プロジェクトパネルでファイルを右クリックして "View File History"
- コマンドパレットで "file history" を検索
コミット一覧が出てきて、選ぶとそのコミットでのファイルの差分が開く。
Tips: GitホスティングとのIntegration
GitHub・GitLab・Bitbucket・SourceHut・Codebergに対応していて、コミットハッシュやIssue/PRへの参照が自動でクリッカブルなリンクになる。
セルフホストのインスタンスを使っている場合は settings.json に書く。
{
"git_hosting_providers": [
{
"provider": "gitlab",
"name": "Corp GitLab",
"base_url": "https://git.example.corp"
}
]
}
コードの特定行のパーマリンクを生成する機能もある。行を選択した状態で右クリックして "Copy Permalink" か、コマンドパレットで permalink を検索。
Tips: Zedをgit commitのエディタにする
コマンドラインから git commit を叩いたときにZedを起動したいなら、
git config --global core.editor "zed --wait"
または .zshrc / .bashrc に。
export GIT_EDITOR="zed --wait"
まとめ
Zedのシェルは整っているので、慣れると普段のGit操作はほぼエディタ内で完結する。
- 日常のステージ・コミット・プッシュ → Gitパネル
- 変更の俯瞰・ハンク単位の操作 → Project Diff
- コンフリクト解消 → ファイル内のボタン
- 並行作業 → Worktree
まずこの4つを覚えてしまえば十分。あとはTipsを状況に応じてつまみ食いする感じで。
参考





