<Git使用>工作区暂存区和版本库,撤销修改

工作区就是实实在在地存储着文件的位置,比方说我的笔记本的“C:/project/git_test“文件夹。

暂存区(stage)则是git add和git commit之间的一个缓存区。需要提交的文件修改统统放到暂存区,然后一次性提交暂存区的所有修改。之前所提到过的git status命令就是用来查看暂存区内容的。

我们把文件往git版本库里添加修改的时候,分两步执行:

第一步用git add把文件添加进去,实际上就是把文件修改添加到暂存区,这一步称为stage;

第二步是用git commit提交更改,实际就是把暂存区的所有内容提交到当前分支。

我们创建git版本库时git自动为我们创建了唯一一个master分支,所以现在git commit就是往master分支上提交更改。

 

如何撤销修改:

撤销工作区内的对某个文件的修改(这个修改还没add到暂存区):

git checkout -- <file>            //file为文件名

撤销暂存区内的对某个文件的修改(unstage),把修改重新放回到工作区:

git reset HEAD <file>          //file为文件名

总结:

SCENE1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

SCENE2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。

SCENE3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本切换一节,不过前提是没有推送到远程库。

猜你喜欢

转载自www.cnblogs.com/dynmi/p/12235493.html