git diff base..feature
git log --no-merges base..feature
git log --no-merges --pretty=%H base..feature | xargs git showパスの通った場所に git-foobar スクリプトを配置し、実行権限を付与すると git foobar で呼び出せる。
現在のディレクトリが git リポジトリかどうかチェックするスクリプトを先頭に入れておく。
#!/bin/bash
if [ -z "$(git rev-parse --git-dir 2> /dev/null)" ]; then
d=$(dirname .);
d=$(cd "$d" && /bin/pwd);
echo "$d is not a git repository"
fi
# ここにシェルを書く例えばブランチ間差分(コミットをdiffにバラして表示)を git cherrydiff base..feature にしたい場合は以下の通り。
#!/bin/bash
if [ -z "$(git rev-parse --git-dir 2> /dev/null)" ]; then
d=$(dirname .);
d=$(cd "$d" && /bin/pwd);
echo "$d is not a git repository"
fi
git log --no-merges --pretty=%H $1 | xargs git show