git branchの一覧を日時順にソートする方法 【メモ】

プログラミング
この記事は約2分で読めます。

git flowに沿ったを開発を進めていると、featureブランチやfixブランチを頻繁に切り替えながら開発することになりますよね。対応が終わってマージしたbranchを消すのをめんどくさがっているとbranchがどんどん溜まっていき、いざ目的のbranchを探そうとするとなかなか見つからなくてイライラすることがあります。

branchを日時順にソートして表示する

目的のbranchを探すためにgit branchを実行すると名前順でbranch表示されますが、これにオプションを付けることで「新しいbranch(≒直近作業したブランチ)」が先頭に来るよう表示することができます。

$ git branch --sort=-authordate

ちなみに古いbranchから表示する場合は以下です。

$ git branch --sort=authordate

AuthorDateとは

Sortオプションに指定しているauthordateは、gitのcommitごとに記録されているオリジナルのタイムスタンプです。
git commit --ammendなどでcommitを修正しても変わることはありません。

ちなみにgit logで表示されるタイムスタンプは、AuthorDateではなくCommitDateという別のものです。こちらはcommitを修正すると変わります。

ためしにgit logに詳細表示のオプションを指定して実行するとこんなかんじで、AuthorDateCommitDateの両方の値を確認できます。

$ git log --pretty=fuller
 commit *******************************************
 Author:     tessy <xxxx@gmail.com>
 AuthorDate: Thu Jun 6 10:47:01 2019 +0900
 Commit:     tessy <xxxx@gmail.com>
 CommitDate: Thu Jun 6 10:47:01 2019 +0900
 
    [fix] なんか良くないので修正
 ...

コメント