Wir haben etwas Code in git und ich fing an, Jenkins einzurichten, um unsere Zweige zu greifen und eine Kompilierung zu versuchen. Es scheint, dass einige der Zweige in den Jahren, seit sie gebaut wurden, zu faulen begonnen haben, da sie es nicht schaffen, eine Marke zu fertigen.Wie konfiguriere ich Jenkins, um alle Zweige außer einigen wenigen zu erstellen, die ich ausschließe?
Ich möchte alle Zweige, die gefunden werden, außer einer Liste der ausgeschlossenen Zweige erstellen. Ist das in Jenkins möglich? Dadurch kann ich die Dinge zum Laufen bringen und dann zurückkommen, um weitere Zweige zu aktivieren, während ich versuche, sie zu beheben.
Was ich bisher
Regex mit Look-Ahead-
Mit Blick auf die versucht haben 'Git> Branchen zu bauen' Option Ich war zuversichtlich, dass ich die Standard '**' Wildcard ersetzen könnte mit einem :. Ein wenig über Graben und doppelte Überprüfung mit http://rubular.com/ schlug vor, dass das Folgende tun könnte, was ich wollte.
:^(?! Herkunft/ausschließen \ -einer \ -branch \ .v1 | Herkunft/ausschließen \ -einer \ -branch \ -too.v2) (\ S +)
es jetzt ist eine Annahme, hier über die Regex-Engine, die im Hintergrund läuft. Ich würde hoffen, dass es Lookahead verstehen würde, aber wenn dies nicht der Fall ist, dann erklärt das, warum diese Methode fehlschlägt. Es scheint alle Zweige zu bauen, einschließlich der, die ich ausschließen möchte. Vielleicht muss ich nur etwas mehr Debuggen finden?
Sah für ähnliche Fragen hier
ich über Jenkins/Hudson Build All Branches With Prioritization kam, die eine mögliche Lösung in diesem Teil hinzugefügt, um eine inversen Option zu enthalten schien https://github.com/jenkinsci/git-plugin/pull/45 zu verzweigen passend klingt wie das, was ich brauche. Leider scheint dies nicht in der Version von Jenkins zu sein, die ich habe, was seltsam ist, wie 2011 vor langer Zeit war.
Das System I bin mit
Ubuntu LTS 14.04. Jenkins ver. 1.611. GNU-Werkzeugketten, um C/C++ - Code zu erstellen.
Das ist so ziemlich ein [Duplikat dieser Frage] (https://stackoverflow.com/questions/21314632/how-to-exclude-git Branch-von-Gebäude-in-Jenkins). Sie sollten eine Regex schreiben, die * nur * den Zweigen entspricht, die Sie ausschließen möchten (oder einfacher wäre, mehrere "Branch to build" -Einträge hinzuzufügen) und dann die "Inverse" -Auswahlstrategie verwenden. –
@ChristopherOrr das klingt wie die Lösung, die ich brauche. Ich konnte einfach nicht herausfinden, wo die inversen Optionen versteckt waren. Ich habe es ausprobiert und es scheint nicht zu funktionieren, versucht immer noch, den ausgeschlossenen Zweig aufzubauen, aber ich werde bestehen bleiben. Solltest du deinen Kommentar als Antwort eingeben, damit ich ihn auswählen kann oder werden die Duplikate nicht behandelt? – TafT