当前位置: 首页 > news >正文

git diff命令详解

git diff 是 Git 中非常常用的命令,用于比较不同版本的文件改动。可以比较工作区、暂存区、或者提交之间的差异。下面是对 git diff 常用场景的详细解释:

1. git diff

当你执行 git diff 时,它会显示工作区与暂存区之间的差异,也就是你在工作区中修改了但还没有添加到暂存区(使用 git add)的内容。例如:

git diff
说明:
  • 左侧:显示的是修改前的代码(减号 - 表示删除的行)。
  • 右侧:显示的是修改后的代码(加号 + 表示新增的行)。

2. git diff --cachedgit diff --staged

这个命令用于显示暂存区与最后一次提交之间的差异。也就是说,已经 git add 了的改动,但还没有 git commit。例如:

git diff --cached
说明:
  • 它显示的是已经准备好提交的改动,区别于 git diff 只显示工作区中的修改。

3. git diff [branch1] [branch2]

可以比较两个分支之间的差异,显示从 branch1branch2 的不同。例如:

git diff main feature-branch
说明:
  • 该命令会展示从 main 分支到 feature-branch 的改动内容。

4. git diff [commit1] [commit2]

用于比较两个提交之间的差异,commit1commit2 可以是提交的哈希值或分支名称。例如:

git diff 1a2b3c 4d5e6f
说明:
  • 这个命令会列出从 commit1commit2 所做的改动。

5. git diff --name-only

这个命令会只显示发生变化的文件名,而不会显示具体的内容。例如:

git diff --name-only
说明:
  • 该命令适合快速查看有哪些文件发生了改动,而不需要查看改动的具体细节。

6. git diff --stat

显示文件的差异摘要,包括哪些文件改变了,以及每个文件的插入和删除的行数。例如:

git diff --stat
说明:
  • 适用于想快速了解改动的概况,特别是文件数目和具体改动的规模。

7. git diff [file]

只比较某个特定文件的改动。例如:

git diff index.html
说明:
  • 只显示 index.html 文件的改动,适用于需要查看单个文件的差异。

8. git diff [commit] [file]

用于查看某个文件在特定提交之前或之后的改动。例如:

git diff 1a2b3c index.html
说明:
  • 显示从 commit 到当前状态 index.html 文件的差异。

9. git diff --word-diff

将差异以词为单位显示,而不是以行为单位。例如:

git diff --word-diff
说明:
  • 这个命令更适合代码较少但内容修改较细微的情况。

10. git diff HEAD

显示当前工作目录和最近一次提交的差异,即工作区和 HEAD 提交之间的改动。例如:

git diff HEAD
说明:
  • 它显示工作区中尚未提交的所有修改。
http://www.lryc.cn/news/470164.html

相关文章:

  • Vue 插槽:组件通信的“隐形通道”
  • react1816中的setState同步还是异步的深层分析
  • 【UE5】将2D切片图渲染为体积纹理,最终实现使用RT实时绘制体积纹理【第七篇-体积纹理绘制】
  • Linux的环境搭建
  • WPF+Mvvm案例实战(五)- 自定义雷达图实现
  • 网络爬虫-Python网络爬虫和C#网络爬虫
  • 如何有效解除TikTok账号间的IP关联
  • Python自省机制
  • wgan-gp 对连续变量 训练,6万条数据,训练结果不错,但是到局部的时候,拟合不好,是否可以对局部数据也进行计算呢
  • python 制作 发货单 (生成 html, pdf)
  • GeoWebCache1.26调用ArcGIS切片
  • 深度学习-卷积神经网络-基于VGG16模型, 实现猫狗二分类(文末附带数据集下载链接, 长期有效)
  • 计算Java集合占用的空间【详解】
  • 仕考网:关于中级经济师考试的介绍
  • SYN590RL 300MHz至450MHz ASK接收机芯片IC
  • 15分钟学 Go 第 20 天:Go的错误处理
  • C++——string的模拟实现(上)
  • JavaCV 之均值滤波:图像降噪与模糊的权衡之道
  • 桥接模式,外界与主机通,与虚拟机不通
  • 用HTML构建酷炫的文件上传下载界面
  • Gateway 统一网关
  • 7 种常见的前端攻击
  • element plus实现点击上传于链接上传并且回显到upload组件中
  • ELK日志分析系统部署
  • 驾校小程序:一站式学车解决方案的设计与实践
  • 【自然语言处理】BERT模型
  • Android 添加如下飞行模式(飞行模式开和关、飞行模式开关菜单显示隐藏)接口
  • 【Vue3】基于 Vue3 + ECharts 实现北京市区域地图可视化
  • 【IC】什么是min period check
  • MyBatis入门之一对多关联关系(示例)