我有一个包含几个组件的SVN存储库:
更详细的结构(分支和标签与问题无关):
我试图解决的问题是当R2与R1不同(打破了对LibraryB_code的期望)和通知(例如构建失败)时自动检测情况。
我将在答案中描述我现在看到的唯一解决方案,但我希望有更优雅的东西:)
环境:Windows,Visual Studio,SVN。
答案 0 :(得分:1)
当您修改 Library B 的svn:externals
属性并提交此更改时,您将创建 Library B 的新修订版。这意味着, Application 存储库仍然是一致的。您
修改 Application 本身的svn:externals
属性时,只需要担心。
可以在 Application 存储库的repository hook中处理此案例。该钩子将 Library B 的指定版本检出到临时目录,并将其所需的 Library A 版本与应用程序所需版本的版本进行比较。有关可用挂钩的列表,请参阅Repository Hooks。
答案 1 :(得分:0)
为每个库存储具有每个依赖项所需修订的文件。添加一个post-build事件,将这些修订与“svnversion”的结果进行比较,并在任何检查失败时中断构建。
缺点: