我们在config/sync文件夹下设置了一个DRUSH CEX。我们的两个开发人员正在进行同一个项目。现在情况是
- Dev 1运行了
drush cex
,并且导出了他的配置 - Dev 2在CMS中做了一些更改,但没有运行
drush cex
- Dev 1将他的配置导出推送到git存储库
- Dev 2从git中提取了更改
- Dev 2尝试运行
drush cim
,但它不允许他运行,因为它会覆盖他在本地中的所有内容,并且会丢失 - Dev 2试图通过运行
drush cex
来备份配置,但它会覆盖GIT REPOSTORY中的任何内容。这意味着开发人员1的更改将被开发人员2的更改覆盖
现在的问题是我们如何绕过这一点?我们希望两个开发人员都能同时将所有更改提交到cms中。但我们无法解决这个问题。
有人能帮助我们正确的工作流程吗?请
是的,但只有当两个开发人员碰巧在同一个配置文件上工作时,才会偶尔发生。
方法1:开发人员2在提取之前导出配置,并在导入配置之前手动解决以后的合并冲突
因此,在Dev 2获取更改之前,他们首先需要导出配置。然后拉。然后解决任何合并冲突。现在才导入配置。
方法2:Dev 2在pull之后导出配置,并在再次导入配置之前手动git重置不相关的更改
或者,Dev 2在pull之后导出config,git重置与他们当前正在开发的功能无关的所有内容(无论如何,这是最佳实践(。现在再次导入配置。