gitコマンドの使い方 ~ git log ~
目次
git log コマンドの概要
commit履歴を確認するコマンドです。
git log を利用するとcommitツリーを可視化することもできます。
$ git log --all --graph
* commit 137bd4bc1d64cc5d5eea4fc62511012403e42ae2 (master)
| Author: snow <snow@abc.com>
| Date: Sat Mar 28 11:35:15 2020 +0900
|
| file-D.txt
|
| * commit 3aa625ad77818ad3bce344cc895c796375e1e7c8 (HEAD -> develop)
|/ Author: snow <snow@abc.com>
| Date: Sat Mar 28 11:34:27 2020 +0900
|
| file-C add
|
* commit 6c8045d5347fedc536dfeb8ea7b5a0c6b5cd8660
| Author: snow <snow@abc.com>
| Date: Sat Mar 28 11:33:23 2020 +0900
|
| fileB add
|
* commit 12a5485f15cff54a33f9dba6057b875432b7e593
Author: snow <snow@abc.com>
Date: Sat Mar 28 11:32:59 2020 +0900
file-A add
git log コマンドの使い方
git log [option]
オプションを指定すると表示する情報量や形式を変更できます。
オプションは色々あるのですが、よく使うオプションについてご紹介します。
git log オプション
–all
チェックアウト中のブランチ以外も含めてリポジトリ全体のcommit履歴を表示する
$ git log --all
commit 137bd4bc1d64cc5d5eea4fc62511012403e42ae2 (master)
Author: snow <snow@abc.com>
Date: Sat Mar 28 11:35:15 2020 +0900
file-D.txt
commit 3aa625ad77818ad3bce344cc895c796375e1e7c8 (HEAD -> develop)
Author: snow <snow@abc.com>
Date: Sat Mar 28 11:34:27 2020 +0900
file-C add
commit 6c8045d5347fedc536dfeb8ea7b5a0c6b5cd8660
Author: snow <snow@abc.com>
Date: Sat Mar 28 11:33:23 2020 +0900
fileB add
–pretty=oneline
1つのcommitを1行で表示する
コミット履歴が多い場合にスッキリします。
$ git log --pretty=oneline
3aa625ad77818ad3bce344cc895c796375e1e7c8 (HEAD -> develop) file-C add
6c8045d5347fedc536dfeb8ea7b5a0c6b5cd8660 fileB add
12a5485f15cff54a33f9dba6057b875432b7e593 file-A add
–oneline
–pretty=onelineと同じく1行で表示するがcommit-hashが先頭7桁で表示される
$ git log --oneline
3aa625a (HEAD -> develop) file-C add
6c8045d fileB add
12a5485 file-A add
–graph
commitのマージ状態などを簡易的なグラフで表示する
$ git log --graph
* commit 5105e8123c3598794ed6c46702971cffc861d17c (HEAD -> master)
|\ Merge: 137bd4b 3aa625a
| | Author: snow <snow@abc.com>
| | Date: Sat Mar 28 12:03:44 2020 +0900
| |
| | Merge branch 'develop'
| |
| * commit 3aa625ad77818ad3bce344cc895c796375e1e7c8 (develop)
| | Author: snow <snow@abc.com>
| | Date: Sat Mar 28 11:34:27 2020 +0900
| |
| | file-C add
| |
* | commit 137bd4bc1d64cc5d5eea4fc62511012403e42ae2
|/ Author: snow <snow@abc.com>
| Date: Sat Mar 28 11:35:15 2020 +0900
|
| file-D.txt
|
* commit 6c8045d5347fedc536dfeb8ea7b5a0c6b5cd8660
| Author: snow <snow@abc.com>
| Date: Sat Mar 28 11:33:23 2020 +0900
|
| fileB add
|
* commit 12a5485f15cff54a33f9dba6057b875432b7e593
Author: snow <snow@abc.com>
Date: Sat Mar 28 11:32:59 2020 +0900
–decorate[=short|full|no]
git log --decorate[=short|full|no]
ブランチの表示のされ方が変わる
実際の出力例
- short => master
- full => refs/heads/master
- no => 表示されない
defaultはshort
よく使うgit logのオプションの組み合わせ
–all –oneline
mergeやrebaseなどを行う前に全てのcommitを確認したい場合によく利用しています。
/c/Git/my-repo (master)
$ git log --all --oneline
5105e81 (HEAD -> master) Merge branch 'develop'
137bd4b file-D.txt
3aa625a (develop) file-C add
6c8045d fileB add
12a5485 file-A add
–all –oneline –graph
複数のブランチを運用している場合でmergeの状況を可視化したい場合に利用しています。
$ git log --all --oneline --graph
* 5105e81 (HEAD -> master) Merge branch 'develop'
|\
| * 3aa625a (develop) file-C add
* | 137bd4b file-D.txt
|/
* 6c8045d fileB add
* 12a5485 file-A add
git log で表示される各項目の意味
$ git log
commit 5105e8123c3598794ed6c46702971cffc861d17c (HEAD -> master)
Merge: 137bd4b 3aa625a
Author: snow <snow@abc.com>
Date: Sat Mar 28 12:03:44 2020 +0900
Merge branch 'develop'
[commit] : commit-hashとHEAD、ブランチやタグが設定されている場合は表示されます。
[Merge] : mergeで作成されたcommitの場合は元になる2つのcommit-hashの7桁が表示されます。
[Author] : git config で設定したユーザ名とメールアドレスが表示されます。
[Date] : commitの作成日付
コミットメッセージ
git log の全てのオプションを確認する方法
以下のコマンドを実行するとブラウザでgit logのヘルプページが表示される
git log --help
Gitコマンドの使い方一覧
Git設定
ログ&設定値確認
ステージングエリアの操作
ローカルリポジトリの操作
commitのエイリアスなど
commitの内容をステージングエリアや作業ディレクトリに反映