Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Mercurial中执行多阶段和/或多开发人员合并?_Mercurial_Merge_Workflow - Fatal编程技术网

如何在Mercurial中执行多阶段和/或多开发人员合并?

如何在Mercurial中执行多阶段和/或多开发人员合并?,mercurial,merge,workflow,Mercurial,Merge,Workflow,问题如下: 我们有default和feature分支,在某种程度上,我们必须将default更改为feature分支 这些变更数量众多,不能由一个团队成员合并,因为不同的变更是由不同的人引入的,大量的冲突需要由引入这些变更的人来解决 是否可以执行多阶段合并,这样团队中的每个人都可以使用Mercurial本身的某种机制在工作站上解决自己的冲突 你知道怎么做吗?然后把每个人都放在一台计算机上的一个办公室里,并把他们锁起来,直到他们完成为止?你可以将特定的变更集从一个分支合并到另一个分支。如果你愿意按

问题如下:

我们有
default
feature
分支,在某种程度上,我们必须将
default
更改为
feature
分支

这些变更数量众多,不能由一个团队成员合并,因为不同的变更是由不同的人引入的,大量的冲突需要由引入这些变更的人来解决

是否可以执行多阶段合并,这样团队中的每个人都可以使用Mercurial本身的某种机制在工作站上解决自己的冲突


你知道怎么做吗?然后把每个人都放在一台计算机上的一个办公室里,并把他们锁起来,直到他们完成为止?

你可以将特定的变更集从一个分支合并到另一个分支。如果你愿意按顺序执行,你可以一个接一个地使用
hgmerge
,但这需要安排开发人员。确定应该合并的变更集范围(从默认分支和功能分支分离时开始),确定应该合并它们的开发人员。按顺序进行合并

如果来自不同开发人员的更改是独立的,那么您还可以使用
hg graft
,这将允许更并行的合并。每个开发人员都会将他们的更改集移植到功能分支,然后您会进行最后的
hg merge
(这可能是不可操作的)来完成所有操作


在这两种情况下,可能最容易将一个或多个合并分支从功能分支分支并合并/移植到该分支,解决任何问题,然后将该分支合并到功能分支。

您可以将特定变更集从一个分支合并到另一个分支。如果你愿意按顺序执行,你可以一个接一个地使用
hgmerge
,但这需要安排开发人员。确定应该合并的变更集范围(从默认分支和功能分支分离时开始),确定应该合并它们的开发人员。按顺序进行合并

如果来自不同开发人员的更改是独立的,那么您还可以使用
hg graft
,这将允许更并行的合并。每个开发人员都会将他们的更改集移植到功能分支,然后您会进行最后的
hg merge
(这可能是不可操作的)来完成所有操作


在这两种情况下,将一个或多个合并分支从功能分支分支并合并/移植到该分支,解决任何问题,然后将该分支合并到功能分支可能最简单。

是否可以进行部分合并(您自己的材料)搁置工作目录,将搁置发送给同事,并且以某种方式使他能够继续合并?是否有一种方法可以只显示/合并在某个变更集中的默认分支上所做的更改?(存储库是从CVS转换而来的。我们15天前已经合并了HEAD的更改,因此只有少数更改集需要合并。我感觉我们缺少了一些东西)是否可以进行部分合并(您自己的东西)搁置工作目录,将搁置发送给同事,并且以某种方式使他能够继续合并?是否有一种方法可以只显示/合并在某个变更集中的默认分支上所做的更改?(存储库是从CVS转换而来的。我们15天前已经合并了HEAD的更改,因此只有少数更改集需要合并。我感觉我们遗漏了一些东西)我认为Tim的第一个选项是您最好的选择。为了避免再次陷入这种情况,您确实应该更频繁地合并。@SteveKaye我知道我们应该更频繁地合并,但正如我在其他评论中所说的,我们从CVS(最终)导入了该项目。我想知道是否有一种方法可以合并对默认设置所做的更改,并跳过功能分支中的更改?我很困惑。在一条评论中,你说只有少量的合并剩余(从HEAD合并后),在另一条评论中,你说变更集太多。我不知道你最后的评论是什么意思-你希望功能分支最终与默认分支相同吗?在这种情况下,看看我的答案。现在有90个变更集,但变更集的数量并不重要,问题在于变更/冲突的数量。问题是这个repo是从CVS导入的,功能分支有400个变更集长。由于功能分支尚未与默认值合并,因此有许多更改。我认为Tim的第一个选项是您在这里的最佳选择。为了避免再次陷入这种情况,您确实应该更频繁地合并。@SteveKaye我知道我们应该更频繁地合并,但正如我在其他评论中所说的,我们从CVS(最终)导入了该项目。我想知道是否有一种方法可以合并对默认设置所做的更改,并跳过功能分支中的更改?我很困惑。在一条评论中,你说只有少量的合并剩余(从HEAD合并后),在另一条评论中,你说变更集太多。我不知道你最后的评论是什么意思-你希望功能分支最终与默认分支相同吗?在这种情况下,看看我的答案。现在有90个变更集,但变更集的数量并不重要,问题在于变更/冲突的数量。问题是这个repo是从CVS导入的,功能分支有400个变更集长。由于要素分支尚未与默认值合并,因此存在大量更改。