问题标签 [jgitver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
285 浏览

java - Commit timestamp in Maven version using jgitver

I'm evaluating the jgitver Maven extension for calculating artefact versions from git metadata.

jgitver provides the commit datetime in a property called jgitver.head_commit_datetime, but I can't figure out how to include the timestamp in the version string.

Can anyone help?

0 投票
2 回答
902 浏览

git - jgitver 插件,在 pom 中获取版本

我正在使用jgitver 库使用 Git 存储库的状态自动生成semver 。

我有一个多模块项目,其中模块是相互依赖的,这意味着如果我对一个模块进行更改,那么其他模块应该开始引用已更改模块的新版本。

所有模块都在同一个 Git 存储库中,因此 Git 中的任何更改都会更改所有模块的版本。以下是我的项目结构的示例

以下是我如何包含依赖模块的示例

由于在任何时候由 和 生成的版本都是jgitver相同的,因为它们在同一个 Git 存储库中,所以我不想在所有模块中对版本进行硬编码。好像版本发生了变化,那么我将不得不手动更改所有模块中的版本以获取依赖关系。module1common-modulecommon-module

是否有类似的变量${project.version}可用于引用由 生成的当前版本jgitver

我希望配置module1如下

0 投票
1 回答
418 浏览

git - jgitver - maven 插件:从 Git 提交派生版本,包括 Git SHA8 字符串和 SNAPSHOT 标记

我会尽量让这个问题简短明了:

使用 jgitver maven 插件,我可以轻松地从 Git 标签创建版本。默认情况下,我可以在 .pom 文件中使用的 ${jgitver.calculated_version} 变量的行为如下:

  1. 设置 Git 标签“v1.0.0”
    版本:1.0.0
  2. 做 Git 提交
    版本:1.0.1-SNAPSHOT

是否可以(如果可以,我怎么能)在版本号中包含提交哈希,像这样?

  1. 设置 Git 标签“v1.0.0”
    版本:1.0.0-162ad57
  2. 做 Git 提交
    版本:1.0.1-ff8cb8a-SNAPSHOT

重要的部分是来自简单(未标记)提交的版本号也以“SNAPSHOT”结尾。

0 投票
1 回答
112 浏览

maven - 在 tycho pomless 构建中使用 JGitVer

我想使用jgitver maven 插件来自动定义 Eclipse 插件的版本、功能、存储库,这些插件是在pomless模式下使用tycho构建的。

这3个插件的版本管理分别是:

  • jgitver 根据 git 树和标签计算版本,创建 pom 的逻辑副本,设置新版本并将新 pom 关联到 maven reactor 中的当前插件。
  • 对于 tycho,版本在 pom 和 manifest.mf 或 feature.xml 文件中定义。执行版本一致性检查。
  • 当 pom 未定义时,pomless maven 使用清单或功能文件中定义的版本生成一个名为 .polyglot.build.properties 的临时 pom 文件。输入路径在此处定义并取决于 PolyglotModelUtil。

更简单的方法是 Jgitver 演变以在本地更新 feature.xml 和 manifest.MF。这将是一个坏主意,因为会修改不符合插件理念的本地文件。

更好的方法是 Jgitver 进化来生成临时 feature.xml 和 manifest.MF 文件,这些文件将使用计算版本进行更新。那么 tycho 和 tycho-pomless 应该被迫使用它们。

如果我成功设置新的 ModelProcessor.LOCATION 选项,这似乎是可能的

您认为这是解决此兼容性问题的有效方法吗?你看到替代品了吗?

谢谢你的帮助。

0 投票
2 回答
826 浏览

java - 使用 JGit 在 Java 中克隆 repo 时出现 AccessDeniedException

我正在以编程方式尝试使用 JGit API 克隆存储库。我正在使用以下代码,但是当我执行它时,出现错误。

我已经尝试了所有可能的解决方案,但我仍然无法解决问题。任何人都可以提供输入吗?

https://gitlab.wuintranet.net/fe/wu-content.git ”上的仓库应该被克隆,但它抛出了这个错误:

0 投票
1 回答
718 浏览

git - Jgitver maven 插件:始终计算标记提交上的 -SNAPSHOT 版本

这就是我所做的:

  1. 我承诺并推动某事
  2. 我去 Github 并在 master 上的最新提交上创建一个发布标签,比如 0.0.1

Jenkins 签出分支/tags/

Jgitver 声称:

Jgitver 配置 说:

在 master 分支上也会发生同样的情况。它似乎永远不会构建一个 0.0.1,它总是会构建一个 0.0.1-SNAPSHOT。

我做错了什么,但它是什么?

0 投票
1 回答
155 浏览

spring-boot - 在 maven 中使用 jgitver 和本地 repo 时 spring-boot-dependency 版本无效

当我将 spring-boot-starter-parent 与本地存储库和 jgitver 结合使用时,出现以下错误:

注意spring-boot-starter-parent 的unknown-version和 spring-boot- dependencies 的 0.0.0-27-a592e4fb-feature_gitlabci-dirty。0.0.0-27-...版本是jgitver计算出来的版本。看起来版本分辨率以某种方式搞砸了。如果我将本地存储库更改为项目之外的任何目录,它就会重新开始工作。如果我抑制 jgitver,它会再次开始工作。如果我在我的项目中更深入地定义本地存储库(如 maven.repo.local=x/y/z/.m2/repository,错误仍然存​​在。

我以这种方式在 pom.xml 中定义了父级:

我以这种方式运行我的 Maven:

如果我添加 jgitver.skip=true,一切正常。

我怀疑这可能与 spring-boot-starter 父级将其父级(spring-boot-dependencies)定义为相对于其位置的事实有关:

有没有人知道为什么会发生这种情况以及如何解决?

0 投票
2 回答
297 浏览

maven - 有没有办法在 Maven pom.xml 中插入所有 ${project.version} 变量?

我需要用${project.version}pom.xml 中的实际值替换所有出现的 。

我可以用 . 来做到这一点maven-flatten-plugin,但这将重写整个 pom.xml 而不仅仅是替换project.version唯一的。

由于我想使用jgitver-maven-plugin我不能使用resolveCiFriendliesOnlyflatten 插件的模式。

有没有一种简单的方法可以只替换整个 pom.xml 中的一个变量?flatten 插件中是否有另一个(隐藏的)选项可以做到这一点?

0 投票
0 回答
66 浏览

gitversion - 让 jgitver 使用标签

在以下场景中,我期望 jgitver 使用版本4.2.4-rc3-SNAPSHOT(最后一个轻量级标签 + SNAPSHOT)。然而,这不会发生。

为什么它不使用标签,我怎样才能让它使用它?这里的目标是在标记一个分支之后,来自该分支的任何提交都使用该标记,即使 checkout 作为提交哈希也是如此。