Gitに改訂の概念があるかどうかはわかりません。
現在の作業コピーを古いバージョン(必ずしも最後のコミットではない)と比較したいと思います。
Emacs内で実行できれば素晴らしいと思います。
Emacs内でこれを行うことについてはわかりませんが、次のようになります。
git diff rev1..rev2
リポジトリ全体に対して必要なことを実行します。次に、それに追加できます。
git diff rev1>..rev2 path
path
ファイルへの絶対パスまたはディレクトリへのパスにすることができるため、サブツリーを比較できます。
作業コピーの差分を探している場合は、リビジョン1を指定するだけです。
git diff rev1 path
リビジョンコードは特別な名前にすることができます。たとえば、HEAD^..HEAD
最後から現在までの名前、またはログからのSHA-1値を意味します。
Emacsで(magitを使用して)これを行うには、次のことができます。
d
を開きますdiff
r
て、差分で使用するコミットの範囲を選択します。または、コミットの範囲を強調表示すると、それらが自動的に選択されます。特定のファイルのみを差分する場合は、--
オプションを使用して、差分に含めるファイルを選択することもできます。
Emacsの組み込みパッケージでvc
リビジョンを比較することが可能です。
C-u C-x v D
(M-x vc-root-diff
プレフィックス引数付き)ツリー全体の任意の2つのリビジョンを比較できます。
C-u C-x v =
(M-x vc-diff
プレフィックス引数付き)現在のファイルセット(マークされたファイルのコレクションとして大まかに定義できます)に対して同じことを行うことができます。