java - 在 git 服务器上发布后,一个带有 <tag> 的新标签被添加到我的 pom 中

标签 java git maven svn maven-release-plugin

我最近使用 mvn:release perform 在 Bitbucket git 服务器上发布了一个基于 maven 的 java 项目命令,它是成功的。然而,在发布完成后,我的 pom.xml 被自动修改为代码片段 <tag>HEAD</tag>在标签中,这让我有点惊讶,因为在我过去的项目中发布颠覆时,我从未见过这种情况发生过。

<scm>
    <connection>scm:git:https://nitalchandel@bitbucket.org/nitalchandel/jobmon.git</connection>
    <url>https://nitalchandel@bitbucket.org/nitalchandel/jobmon</url>
    <developerConnection>scm:git:https://nitalchandel@bitbucket.org/nitalchandel/jobmon.git</developerConnection>
    <tag>HEAD</tag>
</scm>

所以我的问题是:

  1. 这是 maven、git 或 bitbucket 的新功能吗?
  2. 这会不会是我的 NetBeans 编辑器造成的? (我正在从 Windows 命令提示符下发布)
  3. 这可能是因为我在下面提到的 maven-release-plugin 我的 pom 而发生的吗?
  4. 这是好事还是坏事?

pom.xml

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.5.3</version>
    <configuration>
        <tagNameFormat>${project.name}-v@{project.version}</tagNameFormat>
    </configuration>
 </plugin>  

最佳答案

  1. Is this a new feature of maven or git or bitbucket?

这是 maven-release-plugin 的一个特征, 因为 version 2.3 .当目标release:prepare被调用,<tag>元素用于存储存储标签的 SCM 的 URL。比如对于SVN,当使用的SCM是 svn://project/trunk , <tag>元素将是 替换为 svn://project/tags/project-1.0 .对于 Git,没有这样的信息(没有 URL 本身存储标签)所以 <tag>元素设置为 HEAD .

  1. Could this be happening because of my NetBeans editor? (I am doing releases from Windows command prompt)

绝对不是,这纯粹与maven-release-plugin有关.

  1. Could this be happening because of maven-release-plugin my pom which I have mentioned below?

不, <tagNameFormat> 告诉maven-release-plugin创建标签时选择的名称。默认情况下,使用的名称是 ${project.artifactId}-${project.version}但您可以将其覆盖为您想要的。

  1. Is this a good or bad thing?

这是一个信息元素。目的是表明此 POM 是发布的结果。 AFAIK,它将始终由 maven-release-plugin 添加并且没有理由将其删除。

关于java - 在 git 服务器上发布后,一个带有 <tag> 的新标签被添加到我的 pom 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33245076/

相关文章:

java - 如何向JComponent添加多个对象?

java - Twitter 使用类似 twitter4j 的东西将 JSON 字符串保存到 Java 对象 (POJO) 中……?

java - JDBC可以返回域对象作为查询结果吗

eclipse - egit 替换单个文件 - git 索引中的 HEAD 修订与文件

java - SLF4J 是线程安全的吗?

git - `Local ref configured for ' git Push ':` `git remote show origin` 部分未更新

git - 保管箱风格的 svn/git/mercurial? : auto-commit upon change and auto-checkout

java - 如何将所有必需的 jar 放入最后一个 jar 中?

java - 动态添加项目到maven构建reactor?

java - 使用 IntelliJ 的 RESTEasy 服务示例