我有一个C ++项目,我正与其他几个人一起工作。我们中的一些人拥有使用OSX的Mac,而我们中的一些人拥有配备Windows 7或Windows 8.1的PC。我们目前正在使用eclipse编辑项目并使用git进行版本控制。
问题在于,每当您更改一个团队成员的计算机上的属性设置时,都会更新.cproject文件。由于在OSX和Windows上使用了不同的配置/文件扩展名,我们希望.cproject文件保持本地。
我们尝试通过gitignore为.cproject文件取消跟踪.cproject,但这只是将存储库中的.cproject文件一起删除。我们还尝试为.cproject设置一个假设未更改但如果.cproject被更改,则所有这些都需要手动处理冲突和更新。
有没有办法将文件保存在存储库中,但只能在本地更改?即合并不会更新.cproject文件。
答案 0 :(得分:0)
您可以在git checkout
上自动考虑content filter driver,
.cproject.tpl
个文件.cproject
文件(它甚至可以将其与具有私有值的文件合并,由开发人员维护,适合本地环境)
(图片来自" Customizing Git Attributes"来自Git Book)
请注意,EGit / JGit(仍有issue with smudge/clean filters)
可能不完全支持