有一个文件内容如下:
    $ cat README.md
    the first ...
    the second ...
    the third ...

- 文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态.

1.删除最后一行内容:`the third ...`
	$ vi README.md
	
	$ cat README.md
    the first ...
    the second ...
2.执行命令`git status`
$ git status
On branch dev
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")
3.通过上面结果,可以发现,Git会告诉我们,git checkout -- file可以丢弃工作区的修改
	$ git checkout -- README.md
4.执行命令`README.md`查看恢复后文件内容
    $ cat README.md
    the first ...
    the second ...
    the third ...

- 文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态.

1.删除最后一行内容:`the third ...`
	$ vi README.md
	
	$ cat README.md
    the first ...
    the second ...
2.执行命令`git add`添加到缓存区
	$ git add README.md
3.执行命令`git status`
    $ git status
    On branch dev
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
            modified:   README.md
4.执行命令`git reset HEAD README.md`
    $ git reset HEAD README.md
    Unstaged changes after reset:
    M       README.md
5.执行命令`git status`
$ git status
On branch dev
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")
6.通过上面结果,可以发现,Git会告诉我们,git checkout -- file可以丢弃工作区的修改
	$ git checkout -- README.md
7.执行命令`cat README.md`查看恢复后文件内容
    $ cat README.md
    the first ...
    the second ...
    the third ...

总结:
git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令,我们在后面的分支管理中会再次遇到git checkout命令.