おいも貴婦人ブログ

生物系博士課程満期退学をしたAIエンジニアのブログ。

Emacsの開発環境を整える。magitのキーバインド一覧

magitの使い方をまとめたサイトをそのまま引用しました。すぐにコマンドを忘れるので記事にしておきます。
参考URL:http://w.koshigoe.jp/study/?%5Bgit%5D%5Bemacs%5D+magit%A5%E1%A5%E2

M-x magit-status

  • g: リフレッシュ
  • l: 履歴操作用のサブメニューのウィンドウがポップする
  • b: ブランチ操作用のサブメニューのウィンドウがポップする
  • m: マージ操作用のサブメニューのウィンドウがポップする
  • r: リライト操作用のサブメニューのウィンドウがポップする
  • P: git push用のサブメニューのウィンドウがポップする
  • f: git update remote用のサブメニューのウィンドウがポップする
  • F: git pull用のサブメニューのウィンドウがポップする
  • N: git svn用のサブメニューのウィンドウがポップする
  • t: タグ作成用のサブメニューのウィンドウがポップする
  • M: サブモジュール操作用のサブメニューのウィンドウがポップする

セクションの切り替え

  • トグル: TAB/S-TAB
  • 番号指定: M-1/M-2/M-3/M-4
  • M-h: 隠す
  • M-H: すべて隠す
  • M-s: 表示
  • M-S: すべて表示

untracked files(Changes, Unstaged changes)

  • s: 選んだhunkをステージングエリアに追加する(ポイントやリージョンで選択)
  • S: すべてをステージングエリアに追加する
  • i: ファイル名を .gitignore に追加する
  • C-u i: 無視するファイル名を尋ねる
  • I: ファイル名を .git/info/exclude に追加する
  • k: 変更を取り消す

staging area (Staged changes)

  • u: 選んだhunkをステージングエリアから差し戻す(ポイントやリージョンで選択)
  • U: すべてをステージングエリアから差し戻す
  • c: commit用のウィンドウをポップアップさせる
  • C-c C-c: コミットを実行
  • C-c C-a: git commit --amend
  • C-c C-s: --signoff オプションのトグル(magit-commit-signoff 変数)
  • C-c C-e: --allow-empty オプションのトグル
  • C: commit用のウィンドウをポップアップさせる(ChangeLogスタイルのメッセージを挿入してくれる)

履歴(*magit-log*バッファ)

  • l: 簡潔なログを表示する
  • L: 冗長モードのログを表示する
  • rl, rL: 範囲を指定できる
  • C-u L: 冗長モードのログを表示する
  • RET: ポイントで選択しているコミットについての詳細情報を表示する
  • a: そのコミットを現在のブランチに適用する
  • A: 衝突がなければそのコミットを適用してコミットする
  • v: そのコミットをrevertする
  • C-w: そのコミットのsha1をkill-ringにコピーする
  • =: マークしたコミットと差分を表示する
  • .: そのコミットをマークする
  • C-u .: そのコミットのマークを解除する

reflog

  • h: HEADのreflogを表示する

差分

  • d: 作業ツリーと任意のリビジョンの差分を表示する
  • D: 任意の2つのリビジョン間の差分を表示する
  • a: 選択しているhunkを作業ツリーに適用する
  • v: 選択しているhunkを作業ツリーに逆向きで適用する(たぶん)

タグ

  • サブメニュー(tをタイプしてメニューウィンドウをポップアップ)
  • t: 軽量タグ(lightweight tag)
  • a: 注釈タグ(annotated tag)

stash

  • z: 新しいstashを作る
  • Stashesセクション
  • a: stashを適用する
  • A: stashを適用してpopする
  • k: stashをdropする
  • RET: 選んだstashを表示する
  • SPC: 選んだstashを表示する

ブランチ

  • サブメニュー(bをタイプしてメニューウィンドウをポップアップ)
  • v: ブランチバッファ
  • n: 新規作成
  • m: リネーム
  • d: 削除
  • D: 強制削除
  • b: チェックアウト

マージ

サブメニュー(mをタイプしてメニューウィンドウをポップアップ)
m: 手動マージを始める?
M: 自動的にマージする?
X: マージを取り消す場合はXでHEADをhaard resetする
e: 衝突解決用のエディタモードを起動する(操作は?で表示されるヘルプを参照する)

push/pull

  • git pushのサブメニュー(Pをタイプしてメニューウィンドウをポップアップ)
  • P: 現在のブランチを指定先にpushする
  • t: Push tags
  • git remote updateのサブメニュー(fをタイプしてメニューウィンドウをポップアップ)
  • f: Current
  • a: All
  • o: Other
  • git pullのサブメニュー(Fをタイプしてメニューウィンドウをポップアップ)
  • F: 指定先から現在のブランチにpullする

サブモジュール

  • サブメニュー(Mをタイプしてメニューウィンドウをポップアップ)
  • u: 更新
  • b: 初期化と更新
  • i: 初期化
  • s: 同期