将svn:externals设置为root或atomic non-interactive propedit

时间:2014-03-28 20:25:18

标签: svn svn-externals

我在源代码级别使用svn:externals进行自动化模块到系统构建升级,以便

/branches/release-123/modules/xxx

将包含

的推广版本
/trunk/modules/xxx

我正在考虑使用/branches/release-123/modules/xxx创建svn mkdir并将svn:externals属性设置为该属性,但外部结帐到具有该属性的目录的根目录似乎不被允许

另一种选择是将属性添加到modules目录,并将xxx作为checkout目录。但是有多个模块构建独立进行促销,因此脚本化的propget - modify - propset循环可能最终处于竞争状态。

是否有任何解决方法可以将外部结帐目录定义为"。"或者将非交互式属性修改作为原子操作?

到目前为止,我找到了2个解决方法:

1)创建像.xxx这样的虚拟目录,检查到../xxx。它应该在理论上起作用,但实际上是一个肮脏的黑客。

2)目前我已对其进行了设置,以便通过触发单个参数化的Jenkins作业来实现对外部的所有更改,以便不存在竞争条件。它完成了这项工作,但现在系统还有一个单点故障。

我无法使用简单的svn副本,因为这会混乱用于跟踪系统构建中的更改的更改日志。

0 个答案:

没有答案