..." to">
赞
踩
撤销修改
首先,我们在readme.md中新增一条修改
nelsen-mac:learngit mac$ echo 'i am stupid' >> readme.md
再用git status查看状态
nelsen-mac:learngit mac$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.md
no changes added to commit (use "git add" and/or "git commit -a")
可以看出,修改未增加git add到暂存区(stage),提示我们可以用 git checkout -- <file>...放弃修改
一种是
readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
git checkout -- file
命令中的--
很重要,没有--
,就变成了“切换到另一个分支”的命令
一种是
readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
然后已经git add 到暂存区
nelsen-mac:learngit mac$ git add readme.md
nelsen-mac:learngit mac$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: readme.md
提示告诉我们,可以用git reset HEAD <file>... 撤销
git reset
命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD
时,表示最新的版本。
nelsen-mac:learngit mac$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.md
说明暂存区是干净的,工作区有修改,然后我们放弃修改
nelsen-mac:learngit mac$ git checkout -- readme.md
如果已经git commit提交了不合适的修改到版本库时,想要撤销本次提交,就需要执行版本回退,参考系列三
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。