分析代码工作簿Branching合并分支

注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

合并分支

合并允许您在将更改复制到父分支之前,先对要引入到父分支的更改进行预处理。如果您的分支和父分支之间存在逻辑冲突,您可以在合并期间解决冲突,并重新运行变换以检查结果是否正确。

在接下来的文档中,我们将您尝试合并的分支称为源分支,尝试合并到的分支称为目标分支

预览合并

合并预览

在编辑分支的任何时候,您都可以点击工具栏中的预览合并按钮,进入合并状态并查看源分支和目标分支之间的更改。请注意,Code Workbook 只允许分支合并到其直接父分支。进入合并后,源分支和目标分支之间的差异将会在每个变换上高亮显示。查看内容面板中的修改冲突标签以了解更改。在下面的截图中,源分支(右侧)和目标分支(左侧)之间的代码更改以绿色高亮显示。

合并图视图

当您在合并时运行变换,Code Workbook 会自动在输出数据集上创建一个合并分支。这使得合并可以与目标分支和源分支隔离开来。这些合并分支将在您的数据集上以vector-merge-{source}-{target}-{uuid}的形式出现。

解决合并冲突

如果同一个变换在源分支和目标分支中都被修改,可能会出现合并冲突。让我们来看一下这种情况下会发生什么。

点击预览合并后,系统会提示您在继续合并之前需要解决冲突。

合并冲突

点击冲突的变换将显示合并冲突视图。对于代码,行内冲突标记允许您选择要采用的逻辑。

合并冲突代码

解决合并冲突后,合并分支按钮将变为可用状态。

管理合并

在分支合并过程中,您可以使用工具栏左上角的返回按钮返回目标分支。要返回到开始合并之前的源分支,请点击退出合并。退出时,您在合并中所做的任何更改将被移除。

请注意,准备和退出合并是完全安全的,不会影响您在分支上所做的更改——您可以自由预览和退出合并,以查看将要引入目标分支的更改。如果在您开始合并后,目标分支上引入了更改,工具栏中将出现一个更新合并按钮。您可以使用此按钮将最新的目标分支逻辑更新到您的合并中。

完成合并

一旦您解决了冲突并且任何其他分支特定检查都已成功,点击合并分支以将更改引入您的目标分支。系统将显示一个带有两个切换选项的对话框:

确认合并

第一个切换选项允许您选择是否将源分支中的事务复制到目标分支中。假设在分支之后,我们在主分支上进行了额外的工作,并在派生数据集的主分支上提交了新事务。如果该选项设置为True,那么自创建更新分支以来在主分支上创建的事务将在合并后不再出现在数据集中。

第二个切换选项允许您选择是否从数据集中删除源分支。请注意,这不同于删除工作簿分支本身,后者总是通过合并完成且不可配置。如果第二个切换选项为True,则源分支将从在Workbook中创建的派生数据集中删除。

完成合并可能需要一些时间。合并完成后,您刚刚合并的分支将被自动删除,除非它仍有子分支。