我有两个分支用于开发和部署。我对要合并到开发分支的部署分支进行了一些更改。现在我希望合并命令在这种情况下显示冲突 -
//development
$path = 'localhost';
和
//deployment
$path = 'example.com';
相反,部署分支线只是替换了开发分支线。我可以挑选提交并将它们应用到开发分支或手动进行更改,但我认为必须有更好的方法来做到这一点。
如果您在开发分支中也更改了它,它只会发生冲突。因此,因为您只在部署中更改了它,所以它只是一个正常的版本更改。
只需不要在您的变更集中提交该特定文件。(假设您没有对该文件进行其他更改)
由于该配置文件变化很大,因此最好完全避免此类文件的任何合并问题。
您应该将该配置文件的值版本化到单独的文件中:
config_dev.values
config_depl.values
而且您将只有一个config.template
带有占位符的版本化文件用于值:
// server name for dev or deployment or other environments
$path = '@@SERVER_NAME@@'
这样,这个模板文件就不会改变,也不会被合并。
您还可以对能够在结帐时生成实际配置文件的脚本进行版本控制(不会进行版本控制,保持“私有”,即仅在您当前工作目录的本地)
如果您将该脚本声明为文件中的内容过滤器驱动程序,它将.gitattributes
在只获取每个签出文件的内容)git checkout