はじめに

Git で自分の変更履歴だけを見たいことがあったので、--author オプションと Bash のコマンド置換($()) を組み合わせてエイリアスにした。

TL;DR

  • git log --author=$(git config user.email) で自分の変更だけを取得できる
  • エイリアスに logme = !git log --author=$(git config user.email) などを追加

目次

  1. はじめに
  2. TL;DR
  3. 環境・条件
  4. 詳細
    1. –author オプション
    2. git config user.email
    3. 組み合わせる
    4. エイリアスとして登録
  5. まとめ
  6. 参考文献

環境・条件

1
2
3
4
5
6
7
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.15.1
BuildVersion: 19B88

$ git --version
git version 2.23.0

詳細

–author オプション

変更内容を作成した人(基本的にはコミットした人)をフィルタリングできる。ユーザー名やメールアドレスを指定する。

1
2
3
4
5
# taro というユーザー、taro が含まれるメールアドレスのログが表示される
$ git log --author=taro

# 変更内容を確認したい場合は -p を併用
$ git log --author=someone@domain.com -p

git config user.email

git config user.email で登録しているメールアドレスが取得できる

1
2
$ git config user.email
# => someone@domain.com が返ってくる

組み合わせる

Bash の場合はコマンド置換 $(some command) で、コマンドの戻り値をそのまま利用できる。

1
2
# 以下は git log --author=someone@domain.com と同じ結果になる
$ git log --author=$(git config user.email)

エイリアスとして登録

名称は各自で自由に設定。自分は、「自分 = me」として lgmelgmep としている。

~/.gitconfig

1
2
3
[alias]
lgme = !git log --author=$(git config user.email)
lgmep = !git lgme -p --pretty=fuller

これで git lgme と打てば、自分のコミットだけ確認できる。

1
$ git lgme

まとめ

  • git log --author=$(git config user.email) で自分の変更だけを取得できる
  • エイリアスに logme = !git log --author=$(git config user.email) などを追加

参考文献

関連記事