Git diff命令:究竟是谁和谁对比?

Git中,有 工作区、缓存区(Stage)、HEAD分支 三种概念。

git add命令将工作区的修改存入缓存区;git commit命令将缓存区的全部内容上传到HEAD所指向的分支(默认为master分支)。

git-repo

现假设经过一些修改、缓存、提交操作后,当前项目中的file.txt文件在工作区、缓存区、HEAD仓库中的版本内容都不一样:

工作区记为A,其中的file.txt内容为aaa;

缓存区记为B,其中的file.txt内容为bbb;

HEAD分支记为C,其中的file.txt内容为ccc。

那么此时,执行不同的 git diff 命令究竟是对比哪两个区的file.txt文件:

  • 执行"git diff file.txt"——对比A和B
  • 执行"git diff HEAD file.txt"——对比A和C
  • 执行"git diff --staged file.txt"——对比B和C
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值