我在GitHub上有一个项目。项目中的某个组件需要我的项目中有一个配置文件P,其中包含一个无法更改的特定名称和位置。
为了在我的计算机上本地运行JUnit测试,还有一些远程服务器,我们在P中需要两个不同的内容和配置。问题是,由于P,在存储库中,Git pull和push命令覆盖P在服务器或我的计算机上。
我想找到一个解决方案来阻止Git拉动并推动覆盖P.换句话说,我正在寻找一种解决方案,告诉Git如果文件远程和本地具有不同的内容,那就没关系。对此有什么解决方案吗?
(此信息可能不相关,但它是一个Android项目,需要P的组件是Roboelectric。运行JUnit测试的远程服务器是Travis)。
答案 0 :(得分:0)
您唯一的选择是从源代码管理中删除该文件。
git rm --cached P
会告诉git 停止完全跟踪它。
答案 1 :(得分:0)
如果它已经在服务器中并且您想让git“忘记”该文件,则需要使用.gitignore
(这就是为什么它在那里!)。
要停止跟踪文件,请使用以下命令:
git rm --cached <file>
此删除将在您下次提交时进行。