2013-07-18 46 views
6

我在Jenkins Git Publisher提交并在代码生成后将代码推回给主服务器时遇到了一些困难。我的构建过程在我的一个文件中增加了一个版本号,然后我想把这个文件提交回repo,但我似乎无法让它工作。Jenkins Git发布者:如何在编译后将代码提交回主版本?

源代码管理 - > Git的,这些都是我的设置:

  • 库名称:Android
  • 分公司说明符:主
  • 结帐/合并到本地分支:主

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

  • 只推如果生成成功:检查
  • 合并结果:检查
  • 科推:主
  • 目标远程名称:Android
  • 注意:请注意,以推动:更新版本
  • 注:目标远程名称:Android
  • 注:注的命名空间:主

这是詹金斯输出:

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

请帮忙!

回答

4

我认为詹金斯混帐出版商插件没有做这样

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 publisher post-build action。

0

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

他们修复了与推回有关的问题。 Ref:https://issues.jenkins-ci.org/browse/JENKINS-17242。 而且看起来像是坏了,因为最近还有另一个同样提交的bug:https://issues.jenkins-ci.org/browse/JENKINS-19442

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

1

如果您也使用Gradle作为构建版本,那么它有一个Git plugin

下面是完整的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() 
} 

这就是你怎么加,标签,提交和推动使用脚本(有一个plugin这样做,从内詹金斯):

gradle pushNewVersion "-PcommitMsg=hi" "-Pversion=0.1.1" "-PgitPassword=secret" 
相关问题