要望: 前回のコミットで変更されたファイルを開きたい
下のコマンドで行ける形にする。git diff --name-only HEAD HEAD^
を使う。
vim `diff-name`
設定方法: ワンラインで設定できる
以下のコマンドをコマンドラインに叩くか、rcファイルに記述する。
function diff-name(){if [ "$1" = "" ]; then commit=HEAD^;else commit=$1 fi;echo `git diff --name-only HEAD $commit | tr '\012' ' '`}
注意
ファイル名にスペースが入っていると期待した動作をしない。
使用例
前回のコミットから変更のあったファイルをバッファに入れてVimを起動。
vim `diff-name`
origin/master
との間で変更のあったファイル一覧をVimで開く
vim `diff-name origin/master`
アレンジ
echo
ではなく、そもそもvim
を起動する。
function open-vim-diff-name(){if [ "$1" = "" ]; then commit=HEAD^;else commit=$1 fi;vim `git diff --name-only HEAD $commit | tr '\012' ' '`}