关于git rm命令的解析

目录:

   1.Git本地数据管理区
   2. rm命令使用
   3. git rm --cached 命令使用
   4. git rm 命令使用
   原文链接
   参考链接


git rm 命令, 该命令如下有几个类型:

1. rm  <file>  只删除工作区的文件
2. git rm --cached  <file>  只删除暂存区的文件
3. git rm  <file>  删除工作区和暂存区的文件

1.Git本地数据管理区

在这里插入图片描述

准备工作:

1.  创建一个文件夹作为git管理目录. 并在git已管理区域下创建一个aa.txt文件.  
2. mkdir test
3. cd test
4. git init         创建仓库,生成.git文件

2. rm 命令使用

命令:

   rm   aa.txt

运行命令后,aa.txt文件消失了, 运行 git status命令来查看状态

所谓伊人@▒▒ν▒▒▒▒ MINGW64 ~/Desktop/mygit2/demo (master)
$ 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:    aa.txt

no changes added to commit (use "git add" and/or "git commit -a")

在这里插入图片描述
rm命令只是删除工作区的文件,并没有删除版本库的文件, 如果要删除版本库中的文件需要执行以下命令:

git add aa.txt
git commit -m "删除aa.txt文件"

此时已经删除了工作区和版本库中的文件



3. git rm --cached 命令使用

命令叫做: 跟踪取消
意义: 把文件从git中拿出来, 不再进行版本跟踪, 但保留工作区的文件
在这里插入图片描述
命令:

git rm  --cached  aa.txt
rm  aa.txt

则暂存区的aa.txt文件被删除, 运行git status命令来查看状态(成功删除暂存区文件,保留工作区文件,并且将这次删除操作放入暂存区, 这里文件取消了版本追踪):

所谓伊人@▒▒ν▒▒▒▒ MINGW64 ~/Desktop/mygit2/demo (master)
$ git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        deleted:    aa.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        aa.txt

在这里插入图片描述

1. 不执行commit命令,执行git restore  --staged aa.txt, 则可将对象区的test.txt文件恢复到暂存区.
2. 执行commit命令,在对象区删除该文件,此时只有工作区还存在test.txt文件

如果要删除对象区的文件则执行以下命令:

$ git commit -m "删除 test"
[master 223d609] delete test
 1 file changed, 3 deletions(-)
 delete mode 100644 test.txt

此时只有工作区还存在aa.txt文件, 如果要删除工作区的文件则可以执行以下命令:

rm  aa.txt


4. git rm 命令使用

作用: 删除工作区文件,并且将这次删除放入到暂存区中.

命令:

git rm aa.txt

则工作区和暂存区的aa.txt文件均被删除. 用git status来查看状态(成功删除了工作区文件,并且将这次删除操作放入到暂存区):

所谓伊人@▒▒ν▒▒▒▒ MINGW64 ~/Desktop/mygit2/demo (master)
$ git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        deleted:    aa.txt

提交来删除

$ git commit -m "删除 test"
[master f05b05b] delete test
 1 file changed, 3 deletions(-)
 delete mode 100644 test.txt

成功删除了版本库文件.

删除了工作区和版本库的文件。


原文链接:

https://blog.csdn.net/qq_42780289/article/details/98353792


参考链接:

https://blog.csdn.net/songtaiwu/article/details/79447572
https://blog.csdn.net/Lincain/article/details/82428006

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值