git 命令: 工作区与暂存区

发布时间 2023-11-03 12:12:26作者: 武平宁

参考:工作区和暂存区

Git管理的文件分为:工作区,版本库,版本库又分为暂存区stage和暂存区分支master(仓库)

工作区>>>>暂存区>>>>仓库

git add把文件从工作区>>>>暂存区,git commit把文件从暂存区>>>>仓库,

git diff查看工作区和暂存区差异,

git diff --cached查看暂存区和仓库差异,

git diff HEAD 查看工作区和仓库的差异,

git add的反向命令git checkout,撤销工作区修改,即把暂存区最新版本转移到工作区,

git commit的反向命令git reset HEAD,就是把仓库最新版本转移到暂存区。

git diff 时是分为两种情况的:暂存区为空和暂存区不为空。

首先我们明确知道git diff是比较工作区和暂存区的文件的,如果此时暂存区为空,那么稍微有点不同,即:

1 暂存区为空使用git diff:因为此时暂存区为空,此时使用git diff同样也是比较工作区和仓库,即和使用git diff HEAD结果相同

2 暂存区不为空使用git diff:因为此时暂存区不为空,此时使用git diff比较的就是工作区和暂存区

git reset HEAD,就是把暂存区的修改撤销