码迷,mamicode.com
首页 > 其他好文 > 详细

Git 中删除文档库的文件

时间:2017-11-16 18:50:19      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:原理   数据库   记录   文件名   ack   删除文件   需要   删除   init   

情况一:文档库中还没加入任何文件,也就是执行 “git init” 之后,还没有执行过 “git commit” 。

      指令:git rm --cached 文件名

  原理:”git rm 文件名“这条指令,Git 会执行两项检查:

    1.Git 索引中有没有该文件的内容(刚刚有没有执行过 “git add 文件名” ),如果有,表示这个文件的内容和文档库中的不一样,为了避免遗失数据,Git 会显示提示信息,然后放弃执行。

    2. 文件夹中的文件内容是不是和数据库中的一样,如果不一样,Git 同样会显示提示信息,然后放弃执行,以免遗失数据。

  如果通过以上的两项检查,Git 会马上删除文件夹中的文件,然后在索引中记录要从文档库中删除该文件。若这时候执行 “git status”则会显示删除信息,最后必须在执行 “git commit” 指令,才会真正从文档库中删除文件(提示:可以从文档库的历史版本中取回该文件)。

  “git rm --cached 文件名” 这条指令  表示从此以后不需要在文档库中更新这个文件,也就是这个文件将从 tracked 状态转变成 untracked 状态。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

情况二:文档库中已经有文件了,也就是已经执行过 “git commit” 指令。

      指令:git reset HEAD 文件名

原理:删除最新节点而不改变该文件的状态。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Git 中删除文档库的文件

标签:原理   数据库   记录   文件名   ack   删除文件   需要   删除   init   

原文地址:http://www.cnblogs.com/fanqie-006/p/7845489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!