CVS中的Maven本地存储库?

时间:2011-02-08 08:55:13

标签: version-control maven repository cvs

我想将我的CVS用作maven存储库..任何人都可以给出建议吗?

2 个答案:

答案 0 :(得分:2)

有两种方式:

a)如果您只想在一个项目中使用它,请在顶层放置一个'repo'目录。然后在maven约定中添加jar(文件夹/ artifactid / version / artifactif-version.jar中的groupid)。 要将其用作存储库,请在pom中声明基于文件的存储库。

<repositories>
    <repository>
        <id>some-repo</id>
        <name>some-repo</name>
        <url>file://${basedir}/repo</url>
        <releases>
            <checksumPolicy>ignore</checksumPolicy>
        </releases>

    </repository>
</repositories>

如果您使用模块pom中的这个,则必须使用相对于模块pom的URL。

b)如果你想将它用于几个项目,那就是所谓的“货车”。 svn有一个。这些maven插件允许您使用SCM作为存储库。我不知道是否有cvs-wagon。

答案 1 :(得分:0)

出于多种原因,我不会将依赖项放在像CVS这样的SCM系统中。

  • 每次更新pom中的依赖项时,都需要手动添加相应的依赖项jar - 与maven所期望的完全相同的文件夹结构。

  • 您需要担心传递依赖性,这可能会让人不知所措。

  • 由于这些依赖关系不会改变(除非它们是SNAPSHOTS),SCM对它们来说是一种过度杀伤力。每次有新版本的依赖项时,它都需要在不同的文件夹结构中。

如果您想控制依赖项,可以使用maven mirror创建自己的repository manager。这些通常使用一些内容管理库来存储依赖项,并且可以进行备份/存档。

在相关的说明中,Maven Wagon SCM Provider可用于将项目发布到SCM,但尚未使用基于SCM的远程存储库进行测试。