Git でファイルを任意のバージョンに差分する

John Wachira 2023年6月20日
Git でファイルを任意のバージョンに差分する

この記事では、単一のファイルを 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 を行う方法について説明しました。

著者: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

関連記事 - Git Diff