Git移除文件(git rm)

Git移除文件(git rm)教程

git rm 命令用于从索引中删除文件或者同时从工作区和索引中删除文件。

Git移除文件(git rm)详解

功能

从索引删除文件。

语法

git rm [options] files

参数

参数 描述
options git rm 命令使用的参数。
files 需要删除的文件。

常用参数

参数 描述
–cached 不删除本地的文件。

git rm与git rm --cached区别

区别

命令 描述
git rm 同时从工作区和索引中删除文件,即本地的文件也被删除了。
git rm --cached 从索引中删除文件,但是本地文件还存在, 只是不希望这个文件被版本控制。

说明

git rm 删除文件之后,本地的文件也会被删除,因此,需要小心操作。上述操作最后要执行 git commit 才真正提交到 git 仓库。

git rm与rm区别

区别

命令 描述
git rm 删除文件,同时还会将这个删除操作记录下来。
rm 删除文件,仅仅是删除了物理文件,没有将其从 git 的记录中剔除。

说明

即使你已经通过 rm 将某个文件删除掉了,也可以再通过 git rm 命令重新将该文件从 git 的记录中删除掉。

注意:上述操作最后要执行 git commit 才真正提交到 git 仓库。

git rm命令常用实例

实例

参数 描述
git rm file 删除文件之后,本地的文件也会被删除。
git rm --cached file 本地文件不删除。

删除文件

语法

git rm

案例

我们首先,查看本地工作区的文件列表如下:

66_git删除文件git rm.png

我们使用 git rm 命令,删除 git 中的文件,同时也删除本地的文件,具体命令如下:

git rm haicoder1.txt

执行完毕后,如下图所示:

67_git删除文件git rm.png

现在,我们再次查看本地工作区的文件列表如下:

68_git删除文件git rm.png

我们看到,本地的文件已经被删除了,现在,我们使用 git status 命令,查看文件状态,具体命令如下:

git status

执行完毕后,如下图所示:

69_git删除文件git rm.png

我们看到,已经提示我们删除了文件 haicoder1.txt,现在,我们使用 git commit 提交本次删除的文件,具体命令如下:

git commit -m"Delete file haicoder1.txt"

执行完毕后,如下图所示:

70_git删除文件git rm.png

现在,我们再次使用 git status 命令,查看文件状态,具体命令如下:

git status

执行完毕后,如下图所示:

71_git删除文件git rm.png

我们看到,此时,工作区已经没有任何修改了。

删除文件

语法

git rm --cached

案例

我们首先,查看本地工作区的文件列表如下:

72_git删除文件git rm.png

我们使用 git rm 命令,删除 git 中的文件,但不删除本地的文件,具体命令如下:

git rm --cached haicoder2.txt

执行完毕后,如下图所示:

73_git删除文件git rm.png

现在,我们再次查看本地工作区的文件列表如下:

74_git删除文件git rm.png

我们看到,本地的文件并没有被删除,现在,我们使用 git status 命令,查看文件状态,具体命令如下:

git status

执行完毕后,如下图所示:

75_git删除文件git rm.png

我们看到,已经提示我们删除了文件 haicoder2.txt,现在,我们使用 git commit 提交本次删除的文件,具体命令如下:

git commit -m"delete haicoder2.txt"

执行完毕后,如下图所示:

76_git删除文件git rm.png

现在,我们再次使用 git status 命令,查看文件状态,具体命令如下:

git status

执行完毕后,如下图所示:

77_git删除文件git rm.png

我们看到,此时,提示我们 haicoder2.txt 文件没有被追踪,因为,我们使用了 git rm --cached 将其删除了,但本地并未删除。

Git移除文件(git rm)总结

git rm 命令用于从索引中删除文件或者同时从工作区和索引中删除文件。