履歴

前回の、ファイルの状態とコミットでは、ファイルのバージョンを記録しました。

ここでは、コミットの履歴を見る方法について消化します。

履歴の閲覧

gitで、コミットの履歴を見るには、次のコマンドを使います。

git log

実行すると、今までのコミットの履歴を見ることができます。

しかし、このコマンドだけでは、ファイルの差分までは分からないので、差分を含めて履歴を見たい場合は次のコマンドを使います。

git log -p

最近のコミットだけ知りたい場合は、次のようにします。

git log -p -3

ハイフンと数字で、最近の見たいコミットの数を指定します。数字には、最新のコミットから表示させたいコミットの履歴の数を指定します。ハイフンを忘れやすいので、気をつけてください。

最初のうちは必要ないことがほとんどですが、コミットが増えてくると、キーボードの操作が必要になります。

基本的な操作方法は、次のようになっています。

  • 上移動: 上矢印 または j
  • 下移動: 下矢印 または k
  • 終了: q

これらの操作は、今後コミットが増えて、一度の画面に、コミットの履歴を表示できない時などに、表示を移動しなければならない時に使用します。

コミットの情報

これで、コミットの情報を表示できました。

表示された情報として、「commit」「Author」「Date」「コミット時に指定したコミットメッセージ」の4つの情報があると思います。

コミットの履歴として、コミットメッセージが表示されるのはいいのですが、それ以外にも、色々と表示されました。

コミットの際に説明しなかったこととして、コミットメッセージやファイルの差分以外にもコミットには情報が記録されます。

例えば、コミットをした人物、Authorの情報です。これは、git config --global user.emailgit config --global user.nameで登録した名前とメールアドレスがコミットに記録されます。 さらに、コミットをした日付、Dateの情報も記録されます。

他にも、commit **** のように書かれている、ハッシュ値も記録されます。このハッシュ値の詳細は後述します。

コミットの仕組み

gitでは、コミットごとにSHA256と呼ばれる方法を使い、ハッシュ値と呼ばれるものが作成され、それがコミットに記録されます。

このハッシュ値は一意なもので、他のコミットと重複しないようになっているので、同時に複数のコミットを指定するということはありません。

なぜ、このようにハッシュ値が作成されるのかというと、コミットを見分けるためです。

これから方法は説明しますが、例えばある特定のコミットの履歴が見たいとなった時には、このハッシュ値を指定します。

このように、ハッシュ値は使われます。

ハッシュ値を見やすくする

履歴でハッシュ値を見やすくする方法として、下記のコマンドがあります。

git log --pretty=oneline

こうすると、ハッシュ値とコミットメッセージだけが表示されます。

特定のコミットの履歴

もし、特定のコミットの履歴が見たいとなった時には、下記のコマンドを使用します。

このコマンドを使えば、ファイルの変更も見ることができます。

git show ハッシュ値

まとめ

コミットの履歴の閲覧方法を説明しました。

他にも、たくさん便利な履歴の閲覧方法があるのですが、主要なものを最低限ということで、これらを説明しました。