Ich habe Jenkins eingerichtet und ich verwende den Jenkins Workflow Multibranch-Plugin. Ich habe es so konfiguriert, dass ich auf Commits in einem GitHub Repo für jeden Zweig lausche. Ziehen Sie den aktuellen Zweig mit Jenkins Workflow Multibranch-Plugin
Dies ist eine Probe des Jenkinsfile
begangen in einem der Zweige:
node {
// Mark the code checkout 'stage'....
stage 'Checkout'
// Get some code from a GitHub repository
git url: '[email protected]:Me/my-repo.git', credentialsId: '###'
// Get the maven tool.
// ** NOTE: This 'M3' maven tool must be configured
// ** in the global configuration.
def mvnHome = tool 'M3'
stage 'Build'
sh "${mvnHome}/bin/mvn clean install"
}
Wenn ich etwas in diesem Zweig begehen ein Build ausgelöst wird. Das Problem ist, dass Git den Master-Zweig auscheckt und nicht den Zweig, der gerade entsteht.
Wie kann ich die Filiale für den aktuellen Build auschecken?
Die Lösungen bisher
- Verwenden
checkout scm
stattgit url: '[email protected]:Me/my-repo.git', credentialsId: '###'
Auf diese Weise werden Sie den aktuellen Zweig der Kasse. - den Zweig Variable verwenden - Aktivieren Sie diese für weitere Informationen: Jenkins Multibranch pipeline: What is the branch name variable?
Vielen Dank für die Antwort. Ich habe herausgefunden, dass ich 'checkout scm' anstelle von' git' verwenden kann. Es prüft den aktuellen Zweig. –
Oh, das ist viel besser als meine Antwort. –