搜索

首页  >  问答  >  正文

Git已推送的文件设置忽略且不从仓库删除

第一次推送到远程仓库的配置文件,之后因项目每个成员的系统环境不同,配置的内容也不同,需要忽略它以防止推送

现在通过git rm --cached filename取消跟踪,然后把文件写入.gitignore中忽略,的确是能够忽略,但是提交的时候显示的变动是忽略的文件被删除,并且推送到远程仓库后被忽略的文件果然被删除了

总的来说就是想第一次推送把文件推送上去, 以后就都不推送, 但没想到忽略的话是直接从仓库删除, 请各位指点下有何方法能实现?

ringa_leeringa_lee2768 天前830

全部回复(7)我来回复

  • 天蓬老师

    天蓬老师2017-05-02 09:47:29

    使用稀疏检出sparse-checkout解决了问题
    附上参考链接链接描述

    回复
    0
  • PHP中文网

    PHP中文网2017-05-02 09:47:29

    可以试试自欺欺人的假装看不到。。

    git update-index --assume-unchanged xxx/xxx

    回复
    0
  • PHPz

    PHPz2017-05-02 09:47:29

    你这种情况一般是创建一个config.ini.dist供用户修改

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-02 09:47:29

    我觉得其实你没必要在.gitignore文件中进行设置忽略文件。既然不想将那些文件推送到远程,但是又想在远程保留那些文件,直接不把它们加入到暂存区不就可以了。具体来说就是git add的时候,别把那些文件add进去就好了。但是这样做也有缺点,就是可能会遇到无法切换分支的情况,因为始终有一些未加入暂存区的修改。

    回复
    0
  • 滿天的星座

    滿天的星座2017-05-02 09:47:29

    你的思路好奇怪,既然第一次提交以后就不用管,那你就没必要加到.gitignore文件里面阿,难道你这个文件一直在变化?

    回复
    0
  • 世界只因有你

    世界只因有你2017-05-02 09:47:29

    文件名直接加到gitignore,然后线上生成一个不就搞定了吗。干嘛非要整git呢。没看懂。

    回复
    0
  • 黄舟

    黄舟2017-05-02 09:47:29

    碰到过这种问题,还没找到解决方法。估计是没办法

    回复
    0
  • 取消回复