如何在 Git 提交后识别修改的文件

在使用 Git 时,你可能会遇到这样的情况:你已经进行了提交,但记不清哪些文件被修改了。幸运的是,Git 提供了多种方法来追踪这些文件。在本指南中,我们将介绍不同的方法来检查提交后哪些文件被修改,包括本地和远程仓库。
要点
- 使用
git show --name-only
查看最近一次提交中修改的文件。 - 使用
git log -1 --stat
获取修改文件和变更的摘要。 - 使用
git diff
和git reflog
跟踪不同提交之间的修改。 - 使用 GitHub 的网页界面或命令行界面检查远程变更。
本地检查修改的文件
1. 查看最近一次提交中修改的文件
如果你想查看最近一次提交中修改的文件列表,使用:
git show --name-only
这将显示提交信息,后跟修改文件的列表。
或者:
git log -1 --stat
这提供了变更摘要,显示修改的文件以及添加或删除的行数。
2. 检查提交之间的文件差异
比较最近一次提交与前一次提交:
git diff HEAD~1 HEAD --name-only
检查两个特定提交之间的修改:
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 网页界面:
- 导航到 GitHub 上的仓库。
- 点击仓库中的 Commits。
- 点击你想检查的提交。
- 你将看到修改文件的列表以及提交中的更改。
使用 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