我在Mercurial
存储库中保存不同的配置文件时有问题。例如,我有两个分支——dev
和testing
。对于每一个,我有我的Jenkinsfile (Jenkins管道的配置)。它也可以是分支之间不同的任何其他配置文件(DB配置,其他系统配置)。每次当我合并testing
和dev
时,我都应该手动合并Jenkinsfile。我该如何解决这个问题?我想保存配置文件的历史记录,不想在合并时遇到任何问题。有什么方法可以解决这个常规问题吗?
可以这样做:
当你遇到合并冲突时(很明显,每次合并这两个分支时,你都会看到冲突,使用相同名称但不同内容的配置文件),你可以只对该配置文件执行重新合并,同时也使用--tool
标志告诉"合并机器";我们想要保留这个文件的本地版本,通过运行:
hg resolve path/to/config/file --re-merge --tool ':local'
或简写:hg res path/to/config/file --re-merge -t ':local'
注意:hg merge
也有这个--tool
选项,但要小心使用,因为它会将合并工具应用于在该操作中合并的每个文件。
要了解更多关于合并工具的信息,请运行:hg help merge-tools
Mercurial很多时候都有自定义合并工具和合并模式的概念(参见MergeTools.rc
和MergePatterns.rc
)
。您可以为您的Jenkinsfile(即使它没有唯一的perrepository扩展,给它)自定义mergetool,它将只做hg merge --tool internal:local