标签:
工作中,终端数据的制作好后,使用的是SmartGit(注:Git的一个客户端)来push到服务器;但是出现了奇怪的现象:
1、git checkout到本地的目录,理论上目录下有包括新增,删除,变更在内的文件的变化,客户端上都会进行提示;但是有部分文件死活不提示;
2、这部分不提示的文件,放在本地的目录,再在客户端push所有的文件后,服务器依旧没有这些文件;
3、update本地的目录后,这部分文件在;删除本地仓库后,重新checkout,这部分文件不在;
这个问题花费了大家很多的时间,后来才发现,是SmartGit客户端的指定显示文件类型的下拉框,选择的状态是“已跟踪”,造成的(发现原因后,已哭晕在厕所……)。这是什么意思呢?在Git 中,文件包含多种状态,其中比较重要的有:未跟踪,已跟踪,已提交,已推送;下面一个个解释:
1)未跟踪
Git在远端从来没有这些文件的记录,这些文件的状态则不会被提示;就好比来进行监控操作的管理员,他从来不知道这些文件的存在,自然也没法对文件的变化情况进行提示
2)已跟踪
与1)相反,表示Git在远端有过(注意是有过,但不一定现在有,可以是已经删除了)这些文件的记录,那么会对文件的变化进行监视;
3)已提交
从本地目录提交到缓存了
4)已推送
从缓存推送到远端仓库了
标签:
原文地址:http://www.cnblogs.com/bluebirid/p/5437293.html