公式のLinuxカーネルリポジトリのgit clone内で、2つのLinuxカーネルバージョン/タグ(Linuxカーネル4.4.0と4.9.273の間)の間に行われたすべてのコミットを見つけて一覧表示しようとしています。
これを達成するのに役立つgitコマンドまたはソフトウェアツールは何ですか?
答え1
通常、コミットを一覧表示するには、次を使用します。git log
。コミットをリストする他のコマンドがありますが、その目的は望むものよりも異色です。
「2つの[コミット]の間に行われたコミット」は、改訂範囲。問題のコミットはタグです。v4.4
そしてv4.9.273
。ここでは、一部のリビジョンにはありますが、以前のリビジョンにはないコミットを探しています。これは改訂範囲の最も単純な形式です。OLD..NEW
git log v4.4..v4.9.273
このgit log
コマンドには出力形式を制御するための多くのオプションがあります。たとえば、コミットごとに--oneline
1行しか表示されません。--name-status
各コミットでどのファイルが変更されたかを知りたい場合は、--decorate
コミットIDに加えてタグとブランチ名を表示し、コミットのみを--format=%H
リストします。 ID(プログラミング方式でコミットを繰り返すのに便利です)など