主页
手机版
扫描查看手机站
所在位置:首页 → 教程资讯 → 使用git-commit-id-plugin插件自动获取和使用Git信息

使用git-commit-id-plugin插件自动获取和使用Git信息

发布: 更新时间:2024-11-03 09:59:11


git-commit-id-plugin

是一个Maven插件,能够在Maven项目的构建过程中自动获取git仓库的信息,如最后一次提交的ID、分支名称、构建时间等,并将这些信息注入到项目的属性文件中。这对于跟踪项目版本和构建状态非常有用。

以下是如何在Maven项目中使用

git-commit-id-plugin

的基本步骤:

1. 添加插件到pom.xml文件中

在你的Maven项目的

pom.xml

文件中,添加

git-commit-id-plugin



<plugins>

部分。

<build>
  <plugins>
    <plugin>
      <!-- https://mvnrepository.com/artifact/pl.project13.maven/git-commit-id-plugin -->
      <groupId>pl.project13.maven</groupId>
      <artifactId>git-commit-id-plugin</artifactId>
      <version>4.0.5</version>
      <executions>
        <execution>
          <goals>
            <goal>revision</goal>
          </goals>
        </execution>
      </executions>
      <!-- 配置选项 -->
      <configuration>
        <dotGitDirectory>${project.basedir}/../.git</dotGitDirectory>
        <generateGitPropertiesFile>true</generateGitPropertiesFile>
        <failOnNoGitDirectory>false</failOnNoGitDirectory>
        <skipPoms>false</skipPoms>
        <generateGitPropertiesFilename>
          ${project.build.outputDirectory}/git.properties
        </generateGitPropertiesFilename>
        <gitDescribe>
          <!-- 不生成描述属性 -->
          <skip>false</skip>
          <!-- 缩写提交ID长度 -->
          <abbrev>8</abbrev>
        </gitDescribe>
        <includeOnlyProperties>
          <includeOnlyProperty>^git.branch$</includeOnlyProperty>
          <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
          <includeOnlyProperty>^git.commit.(id|time)$</includeOnlyProperty>
          <includeOnlyProperty>^git.commit.id.abbrev$</includeOnlyProperty>
        </includeOnlyProperties>
      </configuration>
    </plugin>
  </plugins>
</build>

2. 配置插件



<configuration>

标签中,你可以配置多种选项,例如生成的属性文件的位置、包含哪些git属性等。默认情况下,插件会生成一个

git.properties

文件在

target/classes

目录下。

<configuration>
    <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
    <generateGitPropertiesFile>true</generateGitPropertiesFile>
    <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
    <format>properties</format>
</configuration>

  1. 构建项目:

使用Maven命令构建项目,例如

mvn clean install

。在构建过程中,

git-commit-id-plugin

插件会自动运行,并在指定的位置生成包含git信息的

git.properties

文件。

4. 查看git.properties文件

打开生成的

git.properties

文件,你将看到类似以下的内容,其中包含了提交时间、提交记录、分支等信息:

#Generated by Git-Commit-Id-Plugin
git.branch=main
git.build.host=heal-mac
git.build.time=2024-10-30T15\:04\:10+0800
git.build.version=1.0.0-SNAPSHOT

git.commit.id=abcdef1234567890
git.commit.id.abbrev=abcdef1
git.commit.time=2024-10-28T12\:34\:56+0800

git.commit.message.full=Initial commit
git.commit.message.short=Initial commit

git.commit.user.name=Your Name
[email protected]

git.commit.author.time=2024-10-26T21\:11\:39+0800
git.commit.committer.time=2024-10-26T21\:11\:39+0800

5. 在应用中使用这些信息

你可以在应用程序中读取

git.properties

文件,并使用这些信息,例如显示当前版本的Git分支和提交ID。

通过这种方式,你可以利用

git-commit-id-plugin

插件来自动获取和使用Git的提交时间、提交记录、分支等信息,从而帮助跟踪和管理你的项目版本。

软件上新 查看更多