这是我的第一个问题,我也是Git的新人。
背景: 在我的约8位开发人员小组中,我应该是Git的版本控制大师。由于我没有很多Git经验,这很令人兴奋。 我决定需要一个共享存储库,它将是生产代码的权威主数据库和开发代码的主要会合点。当我们为公司工作时,我们确实需要至少显示生产代码的授权来源。
我已经指示开发人员在从共享存储库中提取时进行pull-rebase,然后推送他们想要共享的提交。我们遇到了特定类型文件的问题。
我目前假设这些文件中的一个是典型的问题,称为web.config。我们想要一个版本控制的主web.config供开发人员克隆,但是每个开发人员都可以对这个文件进行少量编辑,他们希望在本地保存但不共享。
问题在于:如何告诉git 而不是考虑本地更改或提交此文件以进行变基和推送的相关性? Gitignore似乎没有解决问题,但也许是因为我把web.config放入.gitignore太晚了?
在一些简单的情况下,我们堆叠了本地更改,重新定位,推送和弹出堆栈,但这似乎并不是一直有效。我还没有拿起这个模式。
关于pull --rebase的已发布文档倾向于处理更简单的情况。
或者我完全有错误的想法?我们在滥用Git吗?
Dougkiwi
答案 0 :(得分:5)
配置文件背后的一般想法是仅置于源代码控制之下:
另一个解决方案是在dev分支中与其他本地开发人员一起执行此操作,并添加 custom merge driver 以合并这些配置文件修改。 但是,如果正确构建模板文件,则更复杂且通常不需要。
答案 1 :(得分:0)
也许您可以强制冲突并添加不更改数据的rere配置。但我认为最好不要在这种变化中做出改变。