Zend Framework 和 svn:externals

3

我一直在使用svn:externals将Zend框架文件引入我的项目中。这是我的svn:externals的样子:

-r 22731 http://framework.zend.com/svn/framework/standard/trunk/library/Zend/ Zend
-r 22731 http://framework.zend.com/svn/framework/extras/trunk/library/ZendX/ ZendX

我将其绑定到修订版22731,该版本是此存储库路径的修订版本:http://framework.zend.com/svn/framework/standard/tags/release-1.10.7。我认为这是使用externals的首选方式,但是当我查看Zend_Version类时,我注意到它说const VERSION = '1.11.0dev';。那么,我应该像这样使用svn:externals吗?
http://framework.zend.com/svn/framework/standard/tags/release-1.10.7/library/Zend/ Zend
http://framework.zend.com/svn/framework/standard/tags/release-1.10.7/extras/library/ZendX/ ZendX
4个回答

3
我采用后一种方式,链接到一个带有标记的版本,并且效果很好。
事实上,我相信Matthew Weier O'Phinney曾经在博客中推荐过这种方法。如果我找到了,我会编辑答案并更新。
更新:这是我提到的MWOP文章。有趣的是,我记错了。在评论中,他将您的方法-指向特定修订版本-确定为绝对可靠的方法,指出带有标签的版本可能会更改,尽管极其罕见。

正是那篇博客文章让我开始使用svn:externals。 - Sonny

2

根据反馈,两者的混合似乎是最好的选项:

-r 22731 http://framework.zend.com/svn/framework/standard/tags/release-1.10.7/library/Zend/ Zend
-r 22731 http://framework.zend.com/svn/framework/standard/tags/release-1.10.7/extras/library/ZendX/ ZendX

以下是我的推理:

  1. 标签是为此目的而设计的
  2. 发布的标签可能具有在主干中不存在的构建时更改
  3. 指定修订版可以防止已针对其进行测试的代码之后被引入标记的更改

2

1.10.7标签的正确修订版本是22830,而不是22731。请检查您的链接。

我更喜欢检出我的外部标记。拥有发布版本号比长修订版本号更方便。
如果我使用标签,就知道它是一个已发布的(稳定的)版本。


实际上,“22830”是整个svn项目的修订版本,而不是标记发布中文件的修订版本。如果您使用TortoiseSVN存储库浏览器浏览文件夹,则会在文件列表中显示修订版本。 - Sonny

1

你绝对应该使用标签来检出外部代码。没有必要寻找特定的版本号,这就是标签存在的意义;)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接