【问题标题】:Subversion svn:externals - What's wrong here?Subversion svn:externals - 这里有什么问题?
【发布时间】:2011-01-22 08:29:25
【问题描述】:

首先我想说我已经阅读了 Subversion 手册。我读过this question。我也读过this question。这是我的困境。

假设我有 3 个存储库,布局如下:

  • 数据访问对象/
    • 分支机构/
    • 标签/
    • 后备箱/
      • 数据访问对象/
      • DataAccessObjectTests/
  • 平面对象/
    • 分支机构/
    • 标签/
    • 后备箱/
      • PlanObject/
      • PlanObjectTests/
  • WinFormsPlanViewer/
    • 分支机构/
    • 标签/
    • 后备箱/
      • WinFormsPlanViewer/

PlanObject 和 DataAccessObject 存储库包含共享项目。它们被 WinFormsPlanViewer 使用,但也被其他几个存储库中的几个其他项目使用。

请耐心听我说。我在 WinFormsPlanViewer/trunk 文件夹中放了一个 svn:externals 定义,如下所示:

https://server/svn/PlanObject/trunk Objects<br/>
https://server/svn/DataAccessObject/trunk Objects<br/>

这是我进行 svn 更新后看到的内容。

  • WinFormsPlanViewer/
    • 分支机构/
    • 标签/
    • 后备箱/
      • WinFormsPlanViewer/
      • 对象/
        • 数据访问对象/
        • DataAccessObjectTests/

PlanObject 的东西甚至没有在更新中出现!我不知道这是否与它有关,但 PlanObject/trunk 文件夹上也有一个外部定义:

https://server/svn/DataAccessObject/trunk Objects<br/>

这里发生了什么?我究竟做错了什么?当 PlanObject 也使用 svn:externals 引用 DataAccessObject 时,使用 svn:externals 从 WinFormsPlanViewer 引用 PlanObject 和 DataAccessObject 会产生不良后果吗?

【问题讨论】:

    标签: svn version-control shared-objects svn-externals file-organization


    【解决方案1】:

    您已配置 svn:externals 属性以使用两个不同 URL 的内容填充 Objects 目录。尝试使用不同的目录名创建两个 svn:externals:

    https://server/svn/PlanObject/trunk PlanObjects
    https://server/svn/DataAccessObject/trunk DataAccessObjects
    

    【讨论】:

    • 如果我这样做了,那么我在 WinFormsPlanViewer/trunk/WinFormsPlanViewer/PlanObject 目录中以及 WinFormsPlanViewer/trunk 目录中都有一个 DataAccessObject 的副本。 PlanObject 将引用 PlanObject 目录中的 DataAccessObject,而 WinformsPlanViewer 将引用 trunk 目录中的那个。正确的?不是我要找的……
    • 你是对的,比莉。不能有多个外部具有相同的目标文件夹。 (有关我如何在上面的评论中解决问题的答案,请参阅我的答案)
    【解决方案2】:

    啊,今天早上刚想到这个,就想踢自己,因为我之前没有想到。我将像这样定义我的 svn:externals:

    https://server/svn/PlanObject/trunk/PlanObject 对象/PlanObject https://server/svn/DataAccessObject/trunk/DataAccessObject对象/DataAccessObject

    我将 Billie 的回答标记为已接受,因为他确实回答了我关于为什么 svn:externals 定义不起作用的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-03
      • 1970-01-01
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多