Git:通过Bash查看提交记录中文件的增删与修改

本文介绍了如何通过Git的Bash命令行查看上一次提交记录中修改的文件,以及如何利用TortoiseGit或IDE的Git工具查看文件的具体改动。通过`git log --stat`可以得知哪些文件经历了增删改,但无法查看详细修改内容。若要深入对比文件差异,建议使用Diff工具。

前言

我们有时候会忘了上一次提交记录是哪些文件做了修改,通过github上能够看出来,但是不够方便。实际上通过Git 自带的Bash就能够查看上一次提交记录是哪些文件进行了修改。

注意:通过该命令行,仅能查看提交记录中哪一些文件增加删除了或被修改了,并无法查看文件的修改细节。

git log --stat
// 如果想知道修改的文件具体哪些位置做了修改,可以通过TortoiseGit软件的Diff工具进行比对,也可以通过IDE上集成的Git工具进行比对检查。

在这里插入图片描述

你可以通过 Git 提交的 **commit ID**(即 SHA-1 或 SHA-256 哈希值)来查看该次提交修改了哪些文件以及具体的代码变更。Git 提供了多个命令来实现这一点,最常用的是 `git show` 和 `git log -p`。 --- ### ✅ 方法一:使用 `git show` 查看某个 commit ID 的详细信息 ```bash git show <commit-id> ``` #### 示例: ```bash git show a1b2c3d ``` #### 输出内容包括: - 提交信息(author, date, message) - 本次提交修改文件列表 - 每个文件的具体代码变更(patch) ##### 示例输出片段: ```diff commit a1b2c3d4e5f67890... Author: John Doe <john@example.com> Date: Mon Apr 5 10:00:00 2024 +0800 Fix login validation bug diff --git a/src/auth.js b/src/auth.js index abc1234..def5678 100644 --- a/src/auth.js +++ b/src/auth.js @@ -10,7 +10,7 @@ function validateLogin(username, password) { if (!username) { return false; } - if (password.length < 6) { + if (!password || password.length < 6) { return false; } return true; ``` > 这表示在 `auth.js` 中添加了对 `password` 是否存在的判断。 --- ### ✅ 方法二:只查看提交修改了哪些文件(不显示代码差异) ```bash git show --name-only <commit-id> ``` 仅列出文件名: ``` src/auth.js tests/auth.test.js ``` 或者更详细地显示每个文件的变更状态(新增、修改删除等): ```bash git show --stat <commit-id> ``` 输出示例: ``` src/auth.js | 2 +- tests/auth.test.js | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) ``` --- ### ✅ 方法三:使用 `git log -p` 查看某次提交的补丁信息 ```bash git log -1 -p <commit-id> ``` - `-1`:只显示一条提交记录 - `-p`:显示 patch(即代码差异) 效果 `git show` 类似,但风格更接近 `log` 输出。 --- ### ✅ 方法四:查看提交中具体某个文件的变化 如果你想只看某个文件在该 commit 中的改动: ```bash git show <commit-id> -- <file-path> ``` #### 示例: ```bash git show a1b2c3d -- src/auth.js ``` 这将只显示 `src/auth.js` 在这个提交中的修改。 --- ### 🔍 如何获取 commit ID? 如果你还不知道 commit ID,可以先用: ```bash git log --oneline ``` 输出示例: ``` a1b2c3d Fix login validation bug e4f5g6h Add user profile page i7j8k9l Initial commit ``` 然后复制你需要的 commit ID(如 `a1b2c3d`)进行查询。 --- ### 🧠 小贴士 - commit ID 不需要输入完整,通常前 7 位就足够识别。 - 如果你处于“分离头指针”状态或从旧提交检出,仍可用这些命令查看历史。 - 使用 `git show --pretty=format:%H %an %ad %s` 可自定义输出格式。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Oruizn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值