赞
踩
今天在ant design pro
项目中,新建两个文件且已经git add
了,但又想删除这两个文件,如下图所示:
那怎么处理呢?
使用 git rm 命令即可,有两种选择:
使用如下指令删除:
git rm --cached "文件路径"
这种方式,不删除物理文件,仅将该文件从缓存中删除。
比如我要删除src/utils/constants/ApiContant
下的ApiContant.ts
文件,可以执行如下命令:
git rm --cached src/utils/constants/ApiContant
删除结果如下图所示:
ApiContant.ts
文件在第一张图中是绿色的,表示已经在本地缓存文件中了。
但执行这个命令git rm --cached src/utils/constants/ApiContant
后,ApiContant.ts
文件由绿色变为红色,说明该文件已从缓存中移除了。
最后,在文件夹中删除ApiContant.ts
文件即可,如下图所示:
说明ApiContant.ts
文件已从物理地址中删除了。
还剩apiConstant.ts
文件。当然,这个文件也要删除,但使用另一种方式删除。
使用如下指令删除:
git rm --f "文件路径"
这种方式,不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶)。
比如我要删除src/utils/constants/apiConstant
下的apiConstant.ts
文件,可以执行如下命令:
git rm --f src/utils/constants/apiConstant
删除结果如下图所示:
这种删除方式,存在一个问题,如果当前文件的父目下没有其他文件,就会删除真个父目录,如上图所示。
当前文件的父目下存在其他文件,只删除当前文件,如下所示:
执行命令git rm --f src/utils/constants/apiConstant.ts
,删除apiConstant.ts
文件,如下图所示:
这里的 “已经 add” 不等同于 “已经 commit”。
如果要撤销上一次提交的话,可以使用以下命令:
git reset --soft commit_id
commit_id
通过git log
命令获取,复制上一次提交的commit_id
,粘贴即可,如下所示:
如果要删除文件,最好用 git rm file_name
,而不应该直接在工作区直接 rm file_name
。
如果一个文件已经add到暂存区,还没有commit
,此时如果不想要这个文件了,有两种方法:
用版本库内容清空暂存区:git reset HEAD
只把特定文件从暂存区删除:git rm --cached xxx
创建目录:mkdir
创建文件:touch
linux
删除目录很简单,很多人还是习惯用 rm dir
,不过一旦目录非空,就陷入深深的苦恼之中。
直接 rm
就可以了,不过要加两个参数 -rf
即:
rm -rf “目录名字”
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
使用这个 rm -rf 的时候一定要格外小心,linux 没有回收站的
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。