2013-07-18 10 views
6

Mam trudności z wydaniem Jenkins Git Publisher i wypychaniem kodu do wzorca po mojej kompilacji. Mój proces kompilacji zwiększa numer wersji w jednym z moich plików, a potem chcę ponownie wysłać ten plik do repozytorium, ale nie mogę go uruchomić.Jenkins Git Publisher: Jak przywrócić kod do wzorca po kompilacji?

W kodu źródłowego Management-> Git, to są moje ustawienia:

  • repozytorium Name: Android
  • Oddział Specyfikator: master
  • Zamówienie/seryjnej do lokalnego oddziału: mistrz

Następnie w wyd. Git są to moje ustawienia:

  • push Tylko W przypadku budowy Succeeds: sprawdzone
  • Scalanie Wyniki: sprawdzone
  • Oddział naciskać: master
  • docelowa nazwę zdalnej: Android
  • Uwagi: Uwaga do pchania: Aktualizacja wersji
  • Uwagi: Cel zdalnego Nazwa: Android
  • Uwagi: Note nazw: master

jest to wyjście z Jenkins:

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

Proszę o pomoc!

Odpowiedz

4

myślę Jenkins git plugin wydawca nie robi nic jak

git add . 
git commit -m 'xxx' 

Plugin tylko wykonać pchnięcie i ewentualnie dodać notatkę używając git-notes.

See zauważa tutaj:

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

Aby osiągnąć coś takiego: https://github.com/hamsterready/jenkins-git-publisher-test/commit/d80a1eef2133bee6d7a57b1b229ccd5990d2d606

Dodałem etap post-build (wykonać skrypt) z:

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

I następnie uaktywniono akcję post-build wydawcy git, która popchnęła lokalny commit do źródła.

0

Doświadczyłem tego samego problemu z powrotem do zmiany pochodzenia za pomocą wtyczki Git na Jenkins. Jaka jest wersja wtyczki klienta Git, z której korzystasz? Musi występować błąd w wtyczce klienta git, a tym samym zachowanie.

Naprawiono problem związany z odkładaniem danych. Ref: https://issues.jenkins-ci.org/browse/JENKINS-17242. Wygląda na to, że jest zepsuty, ponieważ jest jeszcze jeden błąd zgłoszony do tego samego ponownie: https://issues.jenkins-ci.org/browse/JENKINS-19442

Jeśli czytasz dyskusję w adresach URL, sugerowana jest szybka zmiana wtyczki klienta Git na 1.0.5 i wtyczka git do wersji 1.3.0. Mam nadzieję, że to działa dla ciebie.

1

Jeśli używasz również Gradle do swoich kompilacji, istnieje dla niego Git plugin.

Oto pełna 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() 
} 

ten sposób można dodać, tag, popełnić, i przesunąć za pomocą skryptu (jest plugin za to, że od wewnątrz Jenkins):

gradle pushNewVersion "-PcommitMsg=hi" "-Pversion=0.1.1" "-PgitPassword=secret" 
Powiązane problemy