Edited at

あまり汎用的じゃないgitのtips


upstreamにmergeされているbranchを全て削除

git branch | xargs git branch -d


untracked filesを一括削除

本当に全部消えるので注意

git clean -fdx


特定のディレクトリにある最新のcommit hashを確認

cd ~/git/something_special && git log -1 | cat - | grep commit


特定のlocal branch以外全てのbranchを削除する

git branch | grep -v branch_name | xargs git branch -D


特定の単語を含むbranchを削除

git branch | grep fix- | awk '{print $1}' | xargs git branch -D


2つのbranch間の同じファイルでdiffを取る

git diff master feature_branch_a file_to_be_compared.txt


2つのbranch間で別名のファイルでdiffを取る

git diff master:old.txt feature_branch_a:new.txt


remote branchの削除

git fetch --prune