Skip to content

Instantly share code, notes, and snippets.

@kob-to-wni
Last active July 20, 2021 03:01
Show Gist options
  • Save kob-to-wni/5ea40456e7b062a0aef7bae961769d6d to your computer and use it in GitHub Desktop.
Save kob-to-wni/5ea40456e7b062a0aef7bae961769d6d to your computer and use it in GitHub Desktop.

gitチートシート

差分

ブランチ間差分(単純なdiff)

git diff base..feature

ブランチ間差分(コミット)

git log --no-merges base..feature

ブランチ間差分(コミットをdiffにバラして表示)

git log --no-merges --pretty=%H base..feature | xargs git show

gitにカスタムコマンドを追加する

パスの通った場所に 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment