十二、从Git版本库中删除文件
在Git版本库中,删除文件非常简单:直接删除文件,然后将删除操作提交到版本库即可。
现在我们将版本库中的README.txt文件直接手动删除。
然后执行git status命令:
$ git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: README.txt
no changes added to commit (use "git add" and/or "git commit -a")
从git status的输出结果可以看到,现在可以执行两种操作:
- 通过git add/rm …命令,将文件的删除记录到版本库
- 通过git restore …命令,撤销文件的删除操作
如果觉得删除错了,就可以撤销删除,但是前提条件是删除的文件必须是已经记录到版本库了:
$ git restore README.txt
$ git status
On branch master
nothing to commit, working tree clean
可以看到,文件的删除已经撤销掉了。
我们现在来重新删除README.txt文件,并将文件的删除记录到版本库。
执行git status命令,确认文件已经手动删除:
$ git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: README.txt
no changes added to commit (use "git add" and/or "git commit -a")
然后执行git add命令(这里也可以使用git rm命令,使用方式及效果和git add都是完全一样的),将文件的删除添加到暂存区:
$ git add README.txt
现在来执行git commit命令,将文件的删除提交到版本库:
$ git commit -m "删除README.txt"
[master 7634c19] 删除README.txt
1 file changed, 3 deletions(-)
delete mode 100644 README.txt
现在,README.txt文件就从版本库中被删除了。
这时候,如果想恢复已经从版本库中删除的文件,就需要使用Git版本回退操作了。