git使用记录七:对工作区和暂存区的一些操作场景
比较暂存区和HEAD所含文件的差异?
操作场景如下:
- 修改readme.md 文档
- vi readme.md
- 加入到暂存区域
- git add readme.md
- 使用git diff -cached 做比较
比较工作区和暂存区所含文件的差异?
操作场景如下:
- 修改readme.md 文档
- vi readme.md
- 加入到暂存区域
- git add readme.md
- 使用git diff 做比较
让暂存区恢复成和HEAD的一样?
git reset HEAD
暂存区覆盖工作区(将工作区的修改抹掉)
操作场景
- 修改 re'adme.md
- vi readme.md
- 比较工作区和暂存区的问价差异
- git diff
- 将暂存区覆盖工作区
- git checkout -- readme.md
- 再次比较工作区和暂存区的差异
- git diff
取消暂存区部分文件的更改?
使用场景:
创建了两个文件, 同时加入到了暂存区域, 发现还需要修改
soaeon@DESKTOP-FUJJTHR MINGW64 /f/gitstudy (master)
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: index.css
new file: index.js
index.css已经加入到暂存区域了, 但是还需要修改, 我们先从暂存区域撤回吧
soaeon@DESKTOP-FUJJTHR MINGW64 /f/gitstudy (master)
$ git reset HEAD index.css
执行git status 查看一下是否退回来了
soaeon@DESKTOP-FUJJTHR MINGW64 /f/gitstudy (master)
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: index.js
Untracked files:
(use "git add <file>..." to include in what will be committed)
index.css
再比较一下工作区和暂存区的差别
soaeon@DESKTOP-FUJJTHR MINGW64 /f/gitstudy (master)
$ git diff --cached
diff --git a/index.js b/index.js
new file mode 100644
index 0000000..e69de29