【问题标题】:How to remove a file from being tracked by git? [duplicate]如何从 git 跟踪中删除文件? [复制]
【发布时间】:2016-02-07 12:02:20
【问题描述】:

我有一个文件 config-dev.php 将用作开发版本配置。

现在,另一位开发人员想要在此文件中进行自己的更改。

当他提交时,这个文件被提交,我的 config-dev.php 被我同事的文件覆盖。

此文件在 .gitignore 中,但仍无法正常工作。

如何从 git index 中删除此文件,以便每个人都可以拥有自己的 config-dev.php?

我试过git rm --cached config-dev.php,但还是不行。这个命令应该由所有同事执行吗?还是应该在 git rm 之后同步??

【问题讨论】:

标签: git github


【解决方案1】:
  1. 从跟踪中删除文件:

    git rm --cached config-dev.php && git commit -m "config-dev.php"
    
  2. 将其添加到.gitignore

    echo config-dev.php >> .gitignore
    git add .gitignore
    git commit -m "adding config-dev.php to .gitignore"
    
  3. 发布这些更改

    git push
    
  4. 在你同事的机器上获取新配置

    git pull
    

完成

当您的其他开发人员因为config-dev.php 的更改而在pull 上出错时,她应该复制她的本地更改,然后在推送后重命名文件:

cp config-dev.php my-config-dev.php
git checkout config-dev.php
git pull
mv my-config-dev.php config-dev.php

【讨论】:

  • 谢谢,这似乎有效! :)
猜你喜欢
  • 2014-08-09
  • 2017-10-23
  • 2019-04-19
  • 1970-01-01
  • 2020-11-18
  • 2016-02-27
  • 2017-05-10
  • 2021-01-29
  • 2018-07-21
相关资源
最近更新 更多