Back

Gitコミット後に変更されたファイルを特定する方法

Gitコミット後に変更されたファイルを特定する方法

Gitを使用していると、コミットを行ったものの、どのファイルが変更されたのか思い出せないという状況に陥ることがあります。幸いなことに、Gitはこれらのファイルを追跡するための複数の方法を提供しています。このガイドでは、ローカルとリモートの両方で、コミット後に変更されたファイルを確認するさまざまな方法を説明します。

重要ポイント

  • 最後のコミットで変更されたファイルを確認するには git show --name-only を使用します。
  • 変更されたファイルと変更の概要を確認するには git log -1 --stat を使用します。
  • 異なるコミット間の変更を追跡するには git diffgit reflog を使用します。
  • GitHubのウェブインターフェースやCLIを使用してリモートでの変更を確認します。

ローカルで変更されたファイルを確認する

1. 最後のコミットで変更されたファイルを表示する

最新のコミットで変更されたファイルのリストを表示するには、次のコマンドを使用します:

git show --name-only

これにより、コミットメッセージと変更されたファイルのリストが表示されます。

または:

git log -1 --stat

これにより、変更されたファイルと追加または削除された行数を示す変更の概要が提供されます。

2. コミット間のファイルの違いを確認する

最後のコミットとその前のコミットを比較する:

git diff HEAD~1 HEAD --name-only

特定の2つのコミット間の変更を確認する:

git diff <commit-hash-1> <commit-hash-2> --name-only

3. 特定のファイルの履歴を確認する

特定のファイルの変更を探している場合:

git log --oneline -- filename

より詳細な表示:

git log -p -- filename

4. コミットされていない変更を確認する

まだコミットされていない変更があると思われる場合、次のコマンドで確認します:

git status

正確な変更を確認するには:

git diff

ステージングされているがコミットされていない変更を確認するには:

git diff --cached

5. 異なるブランチにコミットしたかどうかを確認する

現在のブランチを確認するには:

git branch

ブランチ間の最近のコミットを一覧表示するには:

git reflog

リモートリポジトリ(GitHub)で変更されたファイルを確認する

GitHubウェブインターフェースを使用する:

  1. GitHubでリポジトリに移動します。
  2. リポジトリの「Commits」をクリックします。
  3. 検査したいコミットをクリックします。
  4. 変更されたファイルのリストとコミットの変更内容が表示されます。

GitHub CLIを使用する:

GitHub CLIを使用してコミットの詳細を取得する:

gh repo view <repository-name> --web

コマンドラインからリモートリポジトリを確認する:

git fetch origin

その後、最新のリモートコミットとローカルコミットを比較する:

git diff origin/main HEAD --name-only

これにより、ローカルブランチとリモートリポジトリ間のファイルの違いが表示されます。

結論

Gitはコミット後でもファイルの変更を追跡するための強力なツールを提供しています。最後のコミットでの変更を探す場合でも、バージョン間を比較する場合でも、GitHubでリモートで変更されたファイルを確認する場合でも、これらのコマンドはコードベースを管理するのに役立ちます。次回、何が変更されたか不明な場合は、git show --name-onlyを実行して素早く変更を見つけましょう!

よくある質問

`git show --name-only`または`git log -1 --stat`を使用します。

`git diff <commit-hash-1> <commit-hash-2> --name-only`を実行します。

GitHubのウェブインターフェースまたはGitHub CLIを`gh repo view <repository-name> --web`で使用します。

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers