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次提交

相关推荐
小王不爱笑1322 小时前
Git简单的文件提交操作
git
封奚泽优3 小时前
Deep-Live-Cam(调试和求助)
git·python·ffmpeg·pip·cuda
空空kkk4 小时前
Git版本控制——.gitignore文件
git
测试人社区—52724 小时前
破茧成蝶:DevOps流水线测试环节的效能跃迁之路
运维·前端·人工智能·git·测试工具·自动化·devops
码农阿豪5 小时前
用 Rust 构建 Git 提交历史可视化工具
git·elasticsearch·rust
梦想是红队的咸鱼5 小时前
git泄露(一篇文章就够了)
git·web安全
leijmdas5 小时前
git操作命令
大数据·git·elasticsearch
Sleepy MargulisItG5 小时前
Linux 基础开发工具详解(Yum, Vim, GCC, Make, GDB, Git)
linux·git·vim
skywalk81631 天前
为一个库设置多个远程更新站用于git push,比如gitcode github等
git·github·gitcode