git rm 与 git rm --cached 的区别

感谢原文作者:book_02
原文链接:https://www.jianshu.com/p/1c442fd398b7

git rm同时从工作区和索引中删除文件。即本地的文件也被删除了。

git rm --cached索引中删除文件。但是本地文件还存在, 只是不希望这个文件被版本控制。

举例说明如下:
假设如有版本库如下:
在这里插入图片描述
使用 git rm text1.txt 删除 text1.txt之后,索引和本地文件都被删除了,如下图所示:
在这里插入图片描述
使用git rm --cached text1.txt 把文件text1.txt从git的索引库中移除,但是对文件text1.txt本身并不进行任何操作,如下图所示。
在这里插入图片描述

git rm 与 rm 的区别

git rm: 来删除文件,同时还会将这个删除操作记录下来;

rm: 来删除文件,仅仅是删除了物理文件,没有将其从 git 的记录中剔除;

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

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

删除文件示例

git rm text1.txt

删除文件夹示例

git rm -r mydir

参考 git-scm git rm
https://git-scm.com/docs/git-rm

git rm命令
https://www.yiibai.com/git/git_rm.html

原文地址:https://www.cnblogs.com/tfxz/p/12823710.html