rm, git rm, git rm --cached 区别与关系


HEAD, staging area, working copy在上篇《Git命令之回退篇 git revert git reset》已经讲过,不明白请自行传送过去。

1. rm

  1. 是仅仅删除working directory里的文件,但若需要删除staging area和HEAD上的文件,需要先执行git add, 然后执行git commit -m "delete xxx";

  2. 或者直接执行一句 git commit -am "delete xxx" ,多加一个"-a"参数,这个参数的功能之一就是将working directory里删除的文件从staging area中删除.

2. git rm

  1. 相当于rm + git add, 即working directory和staging area中都删除了该文件

  2. 若想推到本地repository只需git commit -m "delete xxx"即可

  3. 若想推到远程repository只需git push

3. git rm --cached

  1. 保留本地文件,仅仅删除staging area中的文件,停止跟踪该文件的变化

  2. 在commit的之后repository里也会删除该文件,不再跟踪


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM