HOWTO · Git
Git でファイルを任意のバージョンに差分する
Git では、1つのファイルを任意のバージョンと比較できます。
この記事では、単一のファイルを Git のバージョンに diff する方法について説明します。 リポジトリ内の特定のブランチに 30 回の反復があるファイルがある場合、現在のバージョンを他のバージョンと比較できます。
これを行う方法を見てみましょう。
Git でファイルを任意のバージョンに差分する
簡単に説明するために、master ブランチに 30 回の反復を含む README.md ファイルがあると仮定しましょう。 以下のコマンドを実行して、次のことができます。
$ git diff master~25:README.md README.md
現在の README.md ファイルを、25 リビジョン前の master ブランチのファイルと比較してください。 このコマンドは、古い README.md ファイルを作業ツリーのバージョンと比較することに注意してください。
master ブランチでコミットされたバージョンと比較するには、次を実行します。
$ git diff master~25:README.md master:README.md
または、コミットの SHA-1 を使用できます。 次の手順を実行します。
まず、必要なファイル バージョンでコミットの SHA-1 を取得します。 以下に示すように、git log コマンドを実行します。
$ git log --README.md
diff するバージョンの SHA-1 に注意して、以下のコマンドを実行します。
$ git diff SHA-1:README.md README.md
以下に示すように、このメソッドを使用して、リポジトリ内のサブディレクトリを diff することもできます。
$ git diff <revision>: bar/ HEAD:bar/
Note
リビジョン指定子を使用する場合、Windows ではディレクトリにスラッシュを使用します。
結論として、Git を使用すると、単一のファイル バージョンをリポジトリ内の任意のバージョンに diff することができます。 単一のファイルのリビジョン間で diff を行う方法について説明しました。