web-dev-qa-db-fra.com

Comment publier les modifications dans github une fois la génération de jenkins terminée?

J'ai un travail jenkins qui clone le référentiel à partir de github, puis exécute le script powershell qui incrémente le numéro de version dans le fichier. J'essaie maintenant de publier ce fichier de mise à jour dans le référentiel d'origine sur github. Ainsi, lorsque le développeur extrait les modifications, il obtient le dernier numéro de version.

J'ai essayé d'utiliser Git Publisher dans les événements post-build, et je peux publier des balises sans problème, mais il ne semble pas publier de fichiers.

40
Woland

J'ai trouvé une réponse moi-même, ce blog a aidé: http://thingsyoudidntknowaboutjenkins.tumblr.com/post/23596855946/git-plugin-part-

Fondamentalement besoin d'exécuter:

git checkout master

avant de modifier des fichiers

puis

git commit -am "Updated version number"

après les fichiers modifiés

puis utilisez l'action post-build de Git Publisher avec une option de fusion des résultats qui transmettra les modifications à github en cas de réussite de la construction.

34
Woland

Le git checkout master du réponse de Woland n'est pas nécessaire. À la place, utilisez la rubrique "Commander dans une branche locale spécifique" dans la section "Comportements supplémentaires" pour définir le "Nom de la branche" sur maître.

Le git commit -am "blah" est toujours nécessaire.

Vous pouvez maintenant utiliser "Git Publisher" sous "Actions de post-génération" pour transmettre les modifications. Assurez-vous de spécifier les "branches" à pousser ("branche à pousser" = maître, "nom distant cible" = origine).

"Fusionner les résultats" n'est pas nécessaire.

41
Claus

En fait, le "Checkout to specific local branch" de la réponse de Claus n'est pas nécessaire non plus.

Vous pouvez simplement faire des changements, exécutez git commit -am "message" puis utilisez "Git Publisher" avec "Branch to Push" = /refs/heads/master (ou développer ou quelle que soit la branche vers laquelle vous voulez appuyer), "Nom distant cible" = Origine.

9
Andrey Regentov