【问题标题】:Concept of packages in SVNSVN中包的概念
【发布时间】:2011-06-13 11:30:30
【问题描述】:

我们正在从 CA Harvest Software Change Manager 迁移到 svn。在 Harvest SCM 中有一个包的概念,我们可以向其中添加一组文件。我们想在 svn 中实现类似的东西。我可以为此使用属性吗?如果有怎么办?

在任何时候我们都应该能够获得任何包的历史记录。我读过属性没有版本化。

还有其他我可以用来实现包的功能吗?包只是一个包含一组文件的逻辑实体。单元测试完成后,我们会将包推广到系统测试,然后再进行生产。

【问题讨论】:

  • 你用什么将历史从 Harvest 导入到 SVN?它是内部开发的工具吗?

标签: svn migration packages harvest-scm


【解决方案1】:

Properties 在 svn 中分为 2 种类型 - 版本化 (revprops) 和非版本化。前者是您希望被版本化的东西,提交作者,提交评论等。后者是关于文件的“元数据”的属性 - 例如二进制或文本。你不会期望这些是版本化的。

包... SVN 没有跨会话持续存在的一组文件(除非它们位于目录中)的概念,尽管它确实具有changelists 的概念。我对 Harvest 不太熟悉,无法说出这是否对您有用。 如果没有,那么我认为您将不得不将包实现为分支。

【讨论】:

    【解决方案2】:

    根据我对 Harvest 的简要回顾, 是一组您想要更改的文件。 Subversion 并没有这个概念——除了它是内置的。

    在 Subversion 中,版本库是修订版,而不是修订版中的单个文件。因此,每次签入都会更改存储库。这意味着您一起签入的所有文件在某种意义上都是一个“包”。您可以简单地将您修改、添加和删除的所有文件作为单个变更集签入,因为默认情况下,如果您不指定文件列表,Subversion 会签入所有更改。

    由于 Subversion 处理其修订的方式,您可以轻松查看文件集中的哪些文件已更改。

    您可以指定要签入的单个文件和目录,也可以使用 1.5 版中引入的 changelist 功能。您可以将文件添加到各种更改列表中,然后对这些更改列表进行操作。我还没有看到这个功能用得这么多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 1970-01-01
      • 1970-01-01
      • 2015-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多