【发布时间】:2021-04-15 18:34:56
【问题描述】:
我在工作中使用 Torsoise SVN 作为版本控制。我们有一个模型,它附带了几个外部组件,每个外部组件通常都与某个版本挂钩。我需要有一个代码,在运行时检查指定位置的外部,确定它们当前是否已挂钩,然后如果有任何未挂钩的外部,将它们与当前 HEAD 的修订号挂钩。我已经想出了如何使用“propget”来确定外部是否被挂钩,如果是,那么修订号是多少。现在我很难弄清楚如何使用命令行将其他未绑定的外部链接到我选择的修订号。根据 SVN 命令行帮助,似乎有某种方法可以使用“propset”来执行此操作,但我显然无法正确使用语法,也不知道它有什么问题。为了帮助更清楚一点,这里是我正在尝试做的一个例子:
假设我的模型在本地位于“C:\Users\me\Documents\2021\Test\ProdBranches\1.3.x\Controller”,SVN URL 为“https://example.com/svn/Test/ ProdBranches/1.3.x/Controller”。
控制器有两个外部:CAN和Lib
它们的本地路径是:CAN - "C:\Users\me\Documents\2021\VCM_Library\trunk\CAN" & Lib - "C:\Users\me\Documents\2021\VCM_Library\trunk\Simulink"
他们的 SVN URL 是:CAN - “https://example.com/svn/VCM_Library/trunk/CAN” & Lib - “https://example.com/svn/VCM_Library/trunk/Simulink”
我可以运行命令“svn propget svn:externals -R C:\Users\me\Documents\2021\Test\ProdBranches\1.3.x\Controller”并得到响应“Documents\2021\Test\ProdBranches\1.3 .x\控制器 - https://example.com/svn/VCM_Library/trunk/CAN@504 CAN https://example.com/svn/VCM_Library/trunk/SimulinkLib"
所以我可以看到 CAN 与 504 挂钩。现在我想将 Lib 与 579 挂钩。我该怎么做?
这是我尝试 svn propset 时发生的情况。我做了 propdel 来删除外部组件,这就是我尝试在修订版 504 中添加 CAN 的方式:
C:\Users\me>svn ps svn:externals -r504 https://example.com/svn/VCM_Library/trunk/CAN@504 C:\Users\me\Documents\2021\Test\ProdBranches\1.3.x\Controller
svn: E205000: 尝试“svn help propset”获取更多信息 svn: E205000: 无法为设置版本化属性 'svn:externals' 指定修订版
【问题讨论】: