根据修订控制对CA软件变更管理器(Harvest)和Git的比较



到目前为止,我刚刚使用Git,但几天前我遇到了CA软件变更管理器(Harvest)。我一直在为Harvest寻找小教程,但没有找到合适的。如果任何对Git和Harvest都有经验(或有相关知识)的人能告诉我根据工作流程有什么不同,我会很高兴。

例如:在Git中,开发人员从主分支创建分支以获取他的个人工作副本,在子分支中提交并推送他的更改,在将子分支与主分支合并之前从主分支中提取最新的更改,等等。

Harvest是如何做到这一点的,或者一般的工作流程是什么?

太多了!

并行工作也可以在CA Harvest SCM中完成。你所获得的理解有点缺陷。"变更包"是生命周期中的原子单元。它是一组文件,是逻辑更改的一部分。这些软件包归用户所有/分配给用户,用户可以独立工作。

现在来回答您的问题,在CA Harvest SCM中如何实现并行工作。这可以通过以下方式实现:

假设两个开发人员想要在同一个项目上工作,并期望更改相同文件中的代码。两者都将创建各自的包和签出代码。两者都将有一个单独的分支机构。他们进行更改,然后将包从一个状态提升到另一个状态(比如Dev-to-Build)。如果冲突发生在同一个文件中,他们就必须在这里合并冲突。这种冲突的合并可以使用收获本身来完成,或者收获还支持与winmerge等第三方工具的集成。因此,通过这种方式,两个开发人员的工作都将被合并,并可以继续进行。

希望它能回答你的问题。

我做了一些调查,惹恼了一些同事。我得出以下结论:

在Git中创建整个项目的工作副本时,在CA SCM中创建了所谓的"变更包",它由几个文件组成。这些文件被锁定给其他开发人员(为了避免合并冲突?),因此不可能进行并行工作。如果变更包中的修改已经完成,那么该包必须经过几个阶段(例如:测试到生产),因此修改必须得到一些专门用户的批准。

那么,由于锁定,CA SCM无法进行并行工作,并且不会对更改进行快速反馈(因为开发人员必须等待一些同事的批准),这是正确的吗?

你觉得怎么样?

并行开发是可能的。你必须确保你是从主干而不是分支机构结账的。当您尝试签出一个文件时,它会向您显示该文件的最新版本。这可能是您的同事早些时候检查过的分支机构。您必须确保签出创建该分支的主干版本。

最新更新