当你使用git </scm> </tag>时,<scm>里面的Maven pom.xml - <tag>元素的用法是什么

时间:2014-05-18 04:37:59

标签: git maven maven-scm

我们正在将maven和git一起用于Java项目。在<scm>部分,<tag>会自动通过发布插件添加。

例如,

  <scm>
          <connection>scm:git:http://myserver:7990/scm/project/test.git</connection>
          <tag>releaes-tag</tag>
  </scm>

<tag>代表什么?

我认为正常的惯例是<tag>HEAD</tag>.

当我们使用subversion时,maven从未使用过<tag></tag>

<tag></tag>是什么意思?

我搜索了google和maven文档,但我找不到任何相关信息。

1 个答案:

答案 0 :(得分:22)

<tag> release:prepare元素用于指定为此版本创建的标记(实现为MRELEASE-723)。在版本之外,它本质上是一个占位符,HEAD是一个合适的值。

  

当我们使用subversion时,maven从未使用过<tag></tag>

正如MRELEASE-723所解释的那样:

  

当我调用release时:准备好   像这样的网址:   https://example.test/svn/REPO/myproject/branches/release它会   由https://example.test/svn/REPO/myproject/tags/myproject-1.0取代   这很好,因为现在您知道要结帐的修订版本   建立发布。

发布版本的<scm>元素应该包含足够的信息来检查为此版本创建的标记。

Subversion允许标记包含在连接URL中。 Git和Mercurial都不允许这样做,因此使用<tag>元素。