在我的 Git 存储库中,有一个配置文件我希望与主共享存储库保持不同(它必须保持跟踪),因此更改不会填充给其他开发人员。但是,“--assume-unchanged”可以很好地将我的更改保存在本地,同时将代码推送到其他存储库。问题就变成了,当我需要获取最新代码并且我从共享仓库中提取或合并到我的本地时,我会收到错误消息:
error: Your local changes to the following files would be overwritten by merge:
app/grails-app/conf/BuildConfig.groovy
Please, commit your changes or stash them before you can merge.
Aborting
该错误是有道理的,因为我的配置文件与我要合并的共享仓库中的配置文件不同。但是如何在保持此配置不同的同时获取拉(合并)最新代码。我想避免变通:
git update-index --no-assume-unchanged app/grails-app/conf/BuildConfig.groovy
git stash save "config file"
然后在合并后取回我更改的配置:
git stash apply
如何避免这些额外的存储和索引步骤 - 假设不变?有没有办法提取除一个文件之外的所有内容?对于所描述的问题还有其他解决方案吗?
谢谢你