版本控制

简介

版本控制使项目的用户能够以导航器中的对象粒度将Control FPWIN Pro7项目的完整修订历史存储在专用数据库(项目存储库)中。此项目存储库是具有当前和历史开发状态(修订)的项目的一致正式来源。与上一次修订相比,每次修订都有一组一致的修改。在任何时候,都可以通过修订号、日期和时间、作者以及注释来检查、排序和过滤完整的修订历史记录。用户可以检查修改,可以对历次修订进行相互比较,可以重新创建过去的修订,还可以在项目开发过程中添加标签和分支。此项目的用户可以从项目存储库的当前修订版(“提示”)创建自己的本地工作副本,进行本地修改及测试,并通过将这些修改提交到项目存储库来创建一个新修订版,该修订版可以更新到其他用户的工作副本中。这一机制同样适用于版本控制项目中的所有用户库。

因此,版本控制项目还允许为多个用户修改同一项目或用户库中的对象。常规项目或用户库被完全拆分为项目的“镜像”,称为“工作副本”,存储在单独的版本控制文件夹中。项目文件和项目工作副本使用同一个名称,并且通过Control FPWIN Pro7连接。通常,两者包含相同的配置数据,但工作副本包含详细的对象结构,具有导航器可以识别的粒度,并且与项目文件相比,大部分是人类可读的文件。创建这种文件夹和文件结构是为了允许版本控制和多用户开发。

用户库与其工作副本使用同一个名称。两者的关联是通过直接位于项目工作副本"Libraries"文件夹的用户库工作副本来实现的。

此外,工作副本与项目或用户库自动保持同步,无需可见的用户交互。在Control FPWIN Pro7中保存任意更改的对象都会反映在相应工作副本中相应对象文件的即时更新中。如果用户使用项目存储库或用户库存储库中存储的最新修改更新本地工作副本,Control FPWIN Pro7(通常)就会在打开的项目库或用户库中自动反映最新的修改。

另一方面,将项目存储库或用户库存储的新数据传输入本地工作副本(“更新”),并且将修改之后的工作副本数据放入项目存储库或用户库存储库(“提交”)是在Control FPWIN Pro7之外手动完成的,因为Control FPWIN Pro7仅识别工作副本(与使用的任何外部软件无关),而不识别项目存储库、用户库存储库或用户决定使用的外部版本控制软件。

使用单独的版本控制软件,例如Apache subversionTortoiseSVN(不适用于Control FPWIN Pro7安装),全套版本控制功能便可用于工作副本与相应的项目存储库或用户库存储库之间的双向数据交换。然而,这样的数据交换必须在Control FPWIN Pro7之外手动完成。请参阅选定版本控制工具的相应帮助文件。

限制

并非一个Control FPWIN Pro7项目的每一份分离数据都会在工作副本中构成一个独立、分离的对象,因为有些数据太小,或者相互依存关系太多。提前在同事团队中考虑或计划如何处理项目设置等特殊数据,尤其是在使用安全密码或任务列表时。

可分离对象(如POU、DUT和任务)按以下方式处理:

以下对象及其子节点并不视为可分离对象,因为它们取决于所选的PLC:

它们属于工作副本和项目存储库中项目根对象的单一实例文件"Project.asc",并且由这个单一实例文件来表示。

[程序代码]对象将不受版本控制,因为每次更改其他对象并重新编译项目时,该对象都会发生变化。

了解版本控制概念

为了识别、构造和分离项目存储库(和本地工作副本)中的可分离对象,需要将Control FPWIN Pro7项目导航器中的对象(节点)映射到一个文件夹/文件结构,这也是用于外部版本控制系统的先决条件。

每次在Control FPWIN Pro7中保存项目时,此文件夹/文件结构都是数据的目标文件夹/文件结构。它还是外部版本控制系统往来提交更新的结构。该结构必须至少包含用户在项目或用户库中显式添加或更改的所有数据和信息。

反之亦然,该结构还必须是反向更新(导入)过程的来源,以使用包含的用户库(无论是否受版本控制)创建或修改打开的Control FPWIN Pro7项目。

当用户创建项目时,此更新将按特定顺序使用文件夹/文件结构的所有有效且可识别的文件来完成。

当用户修改或更新项目时,还可以进行增量导入,或者仅使用可分离对象的文件子集甚至单个文件进行导入,但要导入到打开的Control FPWIN Pro7项目中。此操作通常会完全替换此项目中同一对象的修订。

处理版本控制和非版本控制项目的差异

如果将项目置于版本控制之下,则以下差异适用:

重新打开以前的版本控制项目

当一个项目禁用版本控制时,不会删除工作副本。因此,再次激活此项目的版本控制时,如果您确认可以删除旧工作副本,则Control FPWIN Pro7会删除该工作副本,并通过当前项目创建全新的工作副本。

最后更新日期: 2023-11-23此页面上的反馈松下热线