使用maven-release-plugin标记并提交到非原始

时间:2010-04-12 17:29:00

标签: git maven-2 maven-release-plugin

当我发布我的项目时,我想与更多的人分享源代码,而不是通常在开发期间做的事情。代码通过Git存储库共享。为此,我使用了以下内容:

在我的本地git存储库中,我定义了以下遥控器:

origin  http://example.com/private
public  http://example.com/public

我目前正在尝试配置maven-release-plugin以管理版本的版本,并管理标记和将代码推送到公共存储库。在我的pom.xml中,我列出了< scm />如下:

<scm><connection>scm:git:http://example.com/public</connection></scm>

(删除此行将导致mvn释放:准备失败)


然而,在致电时

mvn release:clean release:prepare release:perform

Maven致电

git push origin tagname

而不是推送到POM中指定的URL。

所以问题是:

  1. 最佳实践:我应该只是在我的私人仓库(原产地)中进行标记和提交,并手动推送到公众吗?
  2. 我可以将Maven推送到我选择的存储库,而不是默认为源吗?我认为&lt; connection /&gt;的要求暗示了这一点。 &lt; scm /&gt;中的元素。

1 个答案:

答案 0 :(得分:4)

当scm.connection存储库与源不同时发布在maven-release-plugin(或相关的git插件)的2.0版本中修复。要更改为此版本,我将以下内容添加到我的POM中:

<project>
    ...
    <build>
        <plugins>
            ...
            <plugin>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.0</version>
            </plugin>
            ...
        </plugins>
    </build>
    ...
</project>

<小时/> 顺便说一下,Maven正在推出maven-release-plugin版本2.0-beta-9,因为它比2.0更新。