提交到同一文件的末尾,合并两个更改而不会发生冲突

问题描述 投票:0回答:1

我遇到的问题与我正在从事的自动化项目有关。基本上,通过 UI,某人正在向文件(在本例中为 test.conf)的末尾提交更改,同时,其他人正在向同一文件的末尾提交不同的更改。这些节/提交的顺序并不重要。我想保留这两项更改,因为现在 Azure Devops 存储库检测到合并冲突,阻止审批者在 UI 中完成。

例如: 在一个单独的分支(在本例中为“branch_a”)之外,有人在 test.conf 中提交了“Hello 世界 ”

同时,有人创建了一个新分支“branch_b”,并添加了“it's 我”位于文件末尾。

然后,5分钟后,branch_a向main进行PR,完成。所以此时,第 1 行是“hello 世界”。

15分钟后,为branch_b向main创建了一个PR,并且存在合并冲突,因为main现在在第1行有hello,而不是空。

问题是,我希望将两个条目连接起来,而不需要拉取、合并和解决冲突。所以理想的最终输出是“你好 世界 它是 我”。我尝试在 git 属性中将 merge 设置为 union,但这仍然会导致冲突。

我还希望通过 azure devops 代码存储库自动完成此操作。

Example of this issue

git azure-devops pull-request
1个回答
0
投票

恐怕没有现成的方法可以自动组合 Azure DevOps 中的两个条目。

并且当您使用 Azure DevOps Pull Request 功能时,它将忽略

gitattributes
.git/config
中的设置。因此联合合并设置在 Azure DevOps 中不起作用。

为了满足您的要求,我建议您安装并使用扩展:Azure DevOps 中的拉请求合并冲突扩展

安装扩展后,我们可以直接在 Azure DevOps Pull Request UI 中解决冲突。

例如:

enter image description here

在这种情况下,用户可以在 Pull Request UI 中手动合并两个条目并提交 Merge 来解决冲突。然后审批者可以继续拉取请求合并。

如果需要使用gitattributes文件中的设置,则需要在本地机器上拉取并合并并解决冲突。

我完全理解您的要求。 您可以在网站:开发者社区提交建议票来报告此功能。

© www.soinside.com 2019 - 2024. All rights reserved.