如何确保提交新分支的每个人都在pom.xml中反映出更改?

Avi*_*vik 5 git maven githooks

有没有办法可以使用git commit hook自动更新git提交中的pom.xml文件?

我想要做的是,我想用基于分支名称的新版本替换旧版本的所有实例.

例如.

如果我从主人那里退房,我可能会在我的pom.xml中找到

<dependancy>
  <groupId>com.mycompany</groupId>
  <artifactId>my_component</artifactId>
  <version>master-SNAPSHOT</version>
</dependancy>
Run Code Online (Sandbox Code Playgroud)

要么

<groupId>com.mycompany.project</groupId>

    <artifactId>mainProject</artifactId>
    <version>master-SNAPSHOT</version>
    <name>mainProject</name>
Run Code Online (Sandbox Code Playgroud)

我想做的是确保提交新分支的每个人都将新分支反映在pom.xml中.因此,如果我基于名为"myNewBranch"的主人创建一个新分支,我希望pom.xml自动更新为以下内容:

<dependancy>
  <groupId>com.mycompany</groupId>
  <artifactId>my_component</artifactId>
  <version>myNewBranch-SNAPSHOT</version>
</dependancy>
Run Code Online (Sandbox Code Playgroud)

要么

<groupId>com.mycompany.project</groupId>

    <artifactId>mainProject</artifactId>
    <version>myNewBranch-SNAPSHOT</version>
    <name>mainProject</name>
Run Code Online (Sandbox Code Playgroud)

noa*_*hlz 3

您想要做的事情不是由核心 Maven 或Maven SCM 插件“开箱即用”提供的。

您必须编写一个在提交后运行的 shell 脚本,该脚本按照如何以编程方式确定当前签出的 Git 分支以编程方式获取(或创建)分支名称,然后调用mvn versions:set

您还可以执行一些操作,例如制作自定义 Maven 插件或maven-ant-run执行来执行此操作,但我认为脚本方法对您来说是阻力最小的路径。