git diff 完全ガイド:差分確認からアーカイブまで詳しく解説

git diff 完全ガイド:差分確認からアーカイブまで詳しく解説

記事の文字数:1762

Gitの変更履歴を把握するにはgit diffコマンドを利用します。本記事では、git diffの基本的な使い方からブランチ間の比較、変更のアーカイブ方法まで詳しく解説します。さらに、視覚的に差分を確認できるツールや、実践的な活用シナリオも紹介します。


スポンサーリンク

Gitはバージョン管理システムとして、変更履歴を記録し、差分(diff)を確認することで、コードの変更点を把握できます。この記事では、Gitの差分を確認する方法や活用例について、詳細に解説します。

1. git diff の基本

git diff は、ファイルの変更点を比較し、差分を表示するコマンドです。このコマンドを使うことで、変更された箇所を明確に確認できます。

ワーキングディレクトリの変更を表示

実行コマンド
git diff

このコマンドを実行すると、現在の作業ディレクトリとインデックス(ステージングエリア)との差分が表示されます。未ステージングの変更を把握し、必要に応じて git add するかを判断できます。

2. コミット間の差分を確認

過去のコミットと現在の状態を比較することも可能です。例えば、以下のようなコマンドを使います。

直前のコミットとの差分を表示

実行コマンド
git diff HEAD~1

特定のコミットと比較

実行コマンド
git diff <コミットID>

2つのコミット間の差分を表示

実行コマンド
git diff <コミットID1> <コミットID2>

特定の時点でのコードと比較することで、変更履歴を確認しやすくなります。

コミットIDは以下コマンドで確認することができます。

コミットIDの確認
git log --oneline

3. ステージングエリアとの差分

ファイルを git add した後、インデックスとの差分を確認するには、以下のコマンドを使用します。

実行コマンド
git diff --staged

これにより、次のコミットに含まれる変更のみをチェックできます。

4. 特定のファイルの差分を表示

特定のファイルの変更点のみを確認したい場合は、ファイル名を指定します。

実行コマンド
git diff <ファイル名>

これにより、複数の変更の中から特定のファイルだけを抽出して確認できます。

5. 別ブランチとの比較

異なるブランチとの間で差分を確認することも可能です。

現在のブランチと別ブランチの差分を表示

実行コマンド
git diff <ブランチ名>

特定の2つのブランチ間の差分を表示

実行コマンド
git diff <ブランチ名1> <ブランチ名2>

ブランチ間の差分を確認することで、マージ時の衝突を未然に防ぐことができます。

6. 差分のあるファイルをアーカイブ

変更のあるファイルをまとめてアーカイブすることで、特定の変更を別途保存できます。 この方法を使えば、変更のあったファイルだけを抽出し、バックアップや共有が可能になります。

git archive を使って差分のあるファイルを抽出

git archive コマンドを使用して、差分のあるファイルをアーカイブすることができます。

直前のコミットとの差分があるファイルをZIPでアーカイブ

実行コマンド
git diff --name-only HEAD~1 | xargs git archive -o diff_files.zip HEAD

この方法では、リポジトリの履歴を保持しつつ、変更されたファイルのみをアーカイブできます。

8. 差分を活用するシナリオ

1. レビュー前のチェック

コードをプルリクエスト(PR)やマージリクエスト(MR)として提出する前に、git diff を活用して変更点を確認しましょう。適切なレビューを行うことで、バグを未然に防ぐことができます。

2. バグの特定

特定のバグが発生した際に、どのコミットで変更が加えられたのかを調査するのにも有効です。

実行コマンド
git log -p

このコマンドを使用すると、過去のコミットの差分を時系列で確認できます。問題が発生した場合、いつどのような変更が加えられたのかを追跡し、修正につなげることができます。

9. git diff の応用テクニック

カラー表示で見やすくする

git diff の結果が白黒の場合、--color オプションを使うことで、変更点を色付きで表示できます。

実行コマンド
git diff --color

視認性が向上し、変更点を素早く把握できます。

単語単位で差分を表示

通常、git diff は行単位で変更を表示しますが、--word-diff オプションを使うと、単語単位での変更を確認できます。

実行コマンド
git diff --word-diff

この方法を使えば、細かい変更点をより正確に把握できます。

まとめ

Gitの差分を確認することで、コードの変更履歴を理解し、品質を向上させることができます。git diff を適切に活用することで、開発の効率を向上させ、バグを未然に防ぐことが可能になります。基本的なコマンドだけでなく、応用的なテクニックも活用し、より良い開発フローを実現しましょう。


以上で本記事の解説を終わります。
よいITライフを!
スポンサーリンク
Scroll to Top