Git版本控制——diff命令

1. 工作目录 VS 暂存区

$ git diff <filename>

意义:查看文件在工作目录与暂存区的差别。如果还没 add 进暂存区,则查看文件自身修改前后的差别。

也可查看和另一分支的区别:$ git diff <branch> <filename>

示例:

git diff t3.txt

diff里面a表示前面那个变量,b表示第二个变量

HEAD commit版本

Index staged版本

2. 暂存区 VS Git仓库

git diff --cached <filename>

意义:表示查看已经 add 进暂存区但是尚未 commit 的内容同最新一次 commit 时的内容的差异。

也可以指定仓库版本:git diff --cached <commit> <filename>

3. 工作目录 VS Git仓库

git diff <commit> <filename>

意义:查看工作目录同Git仓库指定 commit 的内容的差异。

<commit>=HEAD 时:查看工作目录同最近一次 commit 的内容的差异。

4. Git仓库 VS Git仓库

git diff <commit> <commit>

意义:Git仓库任意两次 commit 之间的差别。

5. 注意

以上命令可以不指定 <filename>,则对全部文件操作。

以上命令涉及和Git仓库对比的,均可指定 commit 的版本。

HEAD 最近一次 commit

HEAD^ 上次提交

HEAD~100 上100次提交

相关推荐
是宇写的啊9 小时前
Git远程操作
git
our_times17 小时前
# Git 高频命令实战指南:从日常开发到进阶协作
git
PBitW18 小时前
git 中容易遗忘的点 (二) ⚡⚡⚡
前端·git·面试
PBitW18 小时前
git 中容易遗忘的点 (三) 🚀🚀🚀
前端·git·面试
郑州光合科技余经理21 小时前
家政预约小程序后端源码深度剖析:支付回调实战
java·开发语言·前端·git·小程序·架构·php
北极糊的狐1 天前
钉钉小程序 Git 版本管理完整流程
git·小程序·钉钉
Fzuim1 天前
当 AI 也成为提交者:ThinkFlow 的 Git 提交规范,是怎么定的
git·agent·thinkflow
CodexDave2 天前
数据库连接池耗尽:排查顺序与三层兜底
服务器·前端·数据库·git·云原生·容器·kubernetes
乐观的Terry2 天前
5、发布系统-Git 集成
大数据·git·elasticsearch
不怕犯错,就怕不做2 天前
GIT的简单打patch应用format-patch and git am
linux·git·全文检索