10.2.2 执行git rm命令删除文件

好吧,按照上面状态输出的内容,将所有的文本文件删除。执行下面的命令:


$git rm detached-commit.txt hack-1.txt new-commit.txt welcome.txt

rm 'detached-commit.txt'

rm 'hack-1.txt'

rm 'new-commit.txt'

rm 'welcome.txt'


再看一看状态:


$git status

On branch master

Changes to be committed:

(use "git reset HEAD<file>…"to unstage)

#

deleted:detached-commit.txt

deleted:new-commit.txt

deleted:welcome.txt

#


删除动作加入了暂存区。这时执行提交动作,就从真正意义上执行了文件删除。


$git commit-m "delete trash files.(using:git rm)"

[master 483493a]delete trash files.(using:git rm)

1 files changed,0 insertions(+),2 deletions(-)

delete mode 100644 detached-commit.txt

delete mode 100644 new-commit.txt

delete mode 100644 welcome.txt


不过不要担心,文件只是在版本库的最新提交中被删除了,在历史提交中尚在。可以通过下面的命令查看历史版本的文件列表。


$git ls-files—with-tree=HEAD^

detached-commit.txt

new-commit.txt

welcome.txt


也可以查看在历史版本中尚在的删除文件的内容。


$git cat-file-p HEAD^:welcome.txt

Hello.

Nice to meet you.