7

在我的构建之后,我在 Jenkins Git Publisher 提交并将代码推回主控方面遇到了一些困难。我的构建过程增加了我的一个文件中的版本号,然后我想将此文件提交回 repo,但我似乎无法让它工作。

在 Source Code Management->Git 中,这些是我的设置:

  • 存储库名称:Android
  • 分支说明符:master
  • 结帐/合并到本地分支:master

然后,在 Git Publisher 中,这些是我的设置:

  • 仅在构建成功时推送:选中
  • 合并结果:选中
  • 要推送的分支:master
  • 目标远程名称:Android
  • 备注:推送注意:更新版本
  • 备注:目标远程名称:Android
  • 笔记:笔记的命名空间:master

这是詹金斯的输出:

Pushing HEAD to branch master at repo Android
Adding note to namespace "master":
Updating version

请帮忙!

4

3 回答 3

5

我认为詹金斯 git 发布者插件没有做任何类似的事情

git add .
git commit -m 'xxx'

插件仅使用git-notes执行推送和可选添加注释。

请参阅此处的注释:

https://github.com/hamsterready/jenkins-git-publisher-test/tree/refs/notes/master

要实现这样的目标:https ://github.com/hamsterready/jenkins-git-publisher-test/commit/d80a1eef2133bee6d7a57b1b229ccd5990d2d606

我添加了构建后步骤(执行 shell 脚本):

git add .
git commit -m 'Updating git.properties'

然后启用将本地提交推送到源的 git 发布者构建后操作。

于 2013-08-22T08:58:28.140 回答
1

如果您还使用 Gradle 进行构建,则有一个Git 插件

这是完整的build.gradle

buildscript {
  repositories { mavenCentral() }
  dependencies { classpath "org.ajoberstar:gradle-git:0.6.3" }
}
import org.ajoberstar.gradle.git.tasks.*

task tag(type: GitTag) {
    tagName = version
    message = "Release of $version"
}

task pushWithTags(type: GitPush){
    credentials{
        username = "karim"
        password = gitPassword
    }
    setPushTags(true)
}
task add(type: GitAdd){
    include("yourVersionFile.txt") 
    // or add everything with include("*") 
}
task commit(type: GitCommit){
    setMessage(commitMsg)
}
task pushNewVersion(){
    tasks.add.execute()
    tasks.commit.execute()
    tasks.tag.execute()
    tasks.pushWithTags.execute()
}

这是您使用脚本添加、标记、提交和推送的方式(在 Jenkins 中有一个用于执行此操作的插件):

gradle pushNewVersion "-PcommitMsg=hi" "-Pversion=0.1.1" "-PgitPassword=secret"
于 2014-03-07T22:47:58.447 回答
0

我在 Jenkins 上使用 Git 插件将更改推回原点时遇到了同样的问题。您使用的 Git 客户端插件版本是什么?git 客户端插件中必须存在错误,因此行为。

他们修复了与推送相关的问题。参考:https ://issues.jenkins-ci.org/browse/JENKINS-17242 。似乎它已经坏了,因为最近再次提交了另一个相同的错误: https ://issues.jenkins-ci.org/browse/JENKINS-19442

如果您阅读了 urls 中的讨论,建议的快速修复是将 Git 客户端插件降级到 1.0.5 并将 git 插件降级到 1.3.0。希望这对你有用。

于 2013-09-19T22:46:29.757 回答