git-rm对工作树和索引的意义是什么?

时间:2017-03-29 13:49:17

标签: git git-rm

git-rm的{​​{3}}包含以下简短描述:

  

git-rm - 从工作树和索引中删除文件

工作树和索引的确切含义是什么,以及将删除哪些本地或远程文件?

2 个答案:

答案 0 :(得分:2)

“工作树”是您检查磁盘上的文件。

“索引”,“暂存区”或“缓存”(你会看到它被称为全部三个)是Git内部的。这是你准备下一次提交的空间。当您git add时,您将文件从工作树复制到暂存区域。当你git commit时,你正在提交临时区域中的内容。

git rm从工作树和暂存区域中删除文件(除非您告诉它只是使用--cached从暂存区域中删除)。

This cheat sheet可以帮助您理解工作树,临时区域和HEAD(当前检出的提交)之间的关系。更重要的是,它告诉你如何操纵它们,因为命令真的不直观。

答案 1 :(得分:0)

这意味着从工作树中删除:您克隆此存储库的文件系统树的工作目录以及由git维护的0% {opacity:0;} 50% {opacity:1;} 100% {opacity:0;} 目录中的索引。 git rm永远不会单独从工作目录中删除文件,否则会使索引数据库处于不一致状态。要通过使用基于Unix的rm命令删除文件来通知索引数据库,您需要运行.git,这实际上删除了已删除对象的索引。