如果数据库中已存在相同名称的对象,bfimport 命令和“导入”实用程序将重命名导入的对象。导入时重命名对象是缺省行为。
要更改此行为并在导入时替换现有对象,您必须指定 bfimport 的 -r 选项或在 UI 中选择“替换实体”选项。
下面的主题描述了 bfimport 命令和“导入”实用程序在重命名和替换导入的对象时使用的命名约定。
导入时,快照对象(项目、选择器和环境)会保留它们的快照名称(如有),或者被指定缺省的快照名称。
对于 7.1 和更早导出文件中的对象,bfimport 命令和“导入”实用程序会使用以下命名约定重命名 UI 中的对象。
对象状态 | UI 对象名 | UI 快照名称(仅适用于快照对象) |
---|---|---|
新名称,不在数据库内 | <new_object_name> | <snapshot_name> |
存在于数据库中 | <existing_object_name>_IMPORT_<n> | <snapshot_name> | Base Snapshot |
快照对象将作为新的父级快照导入,即使它是父级快照的子代也是如此。 只有项目、选择器和环境可以作为快照对象。如果快照名称已存在,将保留该名称。否则,将指定缺省的 Base Snapshot 名称,如表中所示。
对于 7.1 之前的导出文件中的对象,bfimport 命令和“导入”实用程序会使用以下命名约定来替换 UI 中的对象。请注意,快照对象按 UUID 而非名称进行替换评估。
对象状态 | UI 对象名 | UI 快照名称(仅适用于快照对象) |
---|---|---|
新名称,不在数据库内 | <new_object_name> | Base Snapshot |
存在于数据库中,非快照对象 | <existing_object_name | 不适用 |
存在于数据库中,快照对象 | <existing_object_name>_IMPORT_<n> | Base Snapshot |
对于快照对象,会将快照对象作为新的父级快照导入,即使它是父级快照的子代。只有项目、选择器和环境可以作为快照对象。7.1 之前的导出文件不能包含带有快照名称的对象,因此将指定缺省的 Base Snapshot 名称,如表中所示。
对于 7.1 导出文件中的对象,bfimport 命令和“导入”实用程序会使用以下命名约定来替换 UI 中的对象。
对象状态 | UI 对象名 | UI 快照名称(仅适用于快照对象) |
---|---|---|
新名称,不在数据库内 | <new_object_name> | <snapshot_name> | Base Snapshot |
存在于数据库中 | <new_object_name> | <snapshot_name> | Base Snapshot |
快照对象按 UUID 而非名称进行替换评估。快照对象将作为新的父级快照导入,即使它是父级快照的子代也是如此。只有项目、选择器和环境可以作为快照对象。所有 7.1 对象都具有唯一的快照名称或使用缺省的 Base Snapshot 名称。
以下方案演示了该行为。