Freigabe Wir haben in diese Frage ein paar Mal laufen:überflüssig Stamm Unterordner in SVN-Tag erstellt, wenn mit Maven aus Bambus
Statt eine Version des Stammes enthält, für die Freigabe geändert, enthält der markierte Ordner eine Kopie der Stamm vor jeder Änderung, und es enthält auch einen 'Trunk' Unterordner, wo die richtige modifizierte Version ist.
Deshalb, wenn ich dies in meinem SVN Repo haben vor der Freigabe:
- Projektname
- Stamm (Version in pom.xml ist 1.0.0-Snaphot)
- Tags
Normalerweise hätte ich nach der Veröffentlichung der Version 1.0.0:
- Projektname
- Stamm (Version in pom.xml ist 1.1.0-SNAPSHOT)
- Tags
- 1.0.0 (Version in pom.xml ist 1.0.0)
jedoch sehr wenige Male, ich liquidiert mit:
- Projektname
- Stamm (Version in pom.xml ist 1.1.0-SNAPSHOT)
- Tags
- 1.0.0 (Version in pom.xml ist 1.0.0-SNAPSHOT)
- Stamm (Version in pom.xml ist 1.0.0)
- 1.0.0 (Version in pom.xml ist 1.0.0-SNAPSHOT)
Die 'scm' Tag in der pom.xml vor dem Loslassen scheint richtig, so dass ich glaube nicht, wenn von dort kommt:
<scm>
<url>http://.../projectName/trunk</url>
<connection>scm:svn:http://.../projectName/trunk</connection>
<developerConnection>scm:svn:http://.../projectName/trunk</developerConnection>
</scm>
Mein Bambus-Plan ist bestehend aus folgenden Aufgaben:
- Quellcode-Checkout (mit Force Clean Build)
- Script
- Maven 3.x (tatsächliche Release)
Mein Maven 3 (die Release-Version bestimmen).x Aufgabe hat folgendes Ziel:
--batch-Modus -Dusername = $ {} bamboo.username -Dpassword = $ {} bamboo.password -Dtag = $ {bamboo.version} release: Vorbereitung -DreleaseVersion = $ {} bamboo.version -DdevelopmentVersion = $ {} bamboo.nextVersion -snapshot -Dresume = false release: führen
Das Plugin hat keine Optionen:
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.4.1</version>
</plugin>
in den Protokollen überprüft haben, Ich kann nichts abnormales sehen, um die Ursache zu bestimmen.
[LOG] Checking in modified POMs...
[LOG] Executing: /bin/sh -c cd .../build-dir/PROJECT-PLAN-JOB && svn --username user --password '*****' --no-auth-cache --non-interactive commit --file .../temp/PROJECT-PLAN-JOB/maven-scm-386932260.commit --targets .../temp/PROJECT-PLAN-JOB/maven-scm-7155492065832691877-targets
[LOG] Working directory: .../build-dir/PROJECT-PLAN-JOB
[LOG] Tagging release with the label 1.0.0...
[LOG] Executing: /bin/sh -c cd .../build-dir/PROJECT-PLAN-JOB && svn --username user --password '*****' --no-auth-cache --non-interactive copy --file .../temp/PROJECT-PLAN-JOB/maven-scm-80256020.commit --revision 46345 http://.../projectName/trunk http://.../projectName/tags/1.0.0
[LOG] Working directory: .../build-dir/PROJECT-PLAN-JOB
[LOG] Transforming 'projectName'...
[LOG] Not removing release POMs
[LOG] Checking in modified POMs...
[LOG] Executing: /bin/sh -c cd .../build-dir/PROJECT-PLAN-JOB && svn --username user --password '*****' --no-auth-cache --non-interactive commit --file .../temp/PROJECT-PLAN-JOB/maven-scm-1254735614.commit --targets .../temp/PROJECT-PLAN-JOB/maven-scm-2179675177497779390-targets
[LOG] Working directory: .../build-dir/PROJECT-PLAN-JOB
[LOG] Release preparation complete.
[LOG]
[LOG] --- maven-release-plugin:2.4.1:perform (default-cli) @ projectName ---
[LOG] Checking out the project to perform the release ...
[LOG] Executing: /bin/sh -c cd .../build-dir/PROJECT-PLAN-JOB/target && svn --username user --password '*****' --no-auth-cache --non-interactive checkout http://.../projectName/tags/1.0.0 .../build-dir/PROJECT-PLAN-JOB/target/checkout
[LOG] Working directory: .../build-dir/PROJECT-PLAN-JOB/target
[LOG] Invoking perform goals in directory .../build-dir/PROJECT-PLAN-JOB/target/checkout
[LOG] Executing goals 'deploy'...
Von dem, was im Protokoll zu sehen ist, die Ausführung ist:
- Die Version in der pom modifiziert wird, um die -snapshot zu entfernen (1.0.0)
- Dieser pom ist verpflichtet in die Stamm
- der Inhalt des Rumpfes in den Tag kopiert 1.0.0
- die Version in der pom zur nächsten Version geändert wird (1.1.0-SNAPSHOT)
- Dieses pom wird im Kofferraum commited
- Der Inhalt des Tags 1.0.0 im Ordner/target/Kasse/
- Die Veröffentlichung auf der/target/Kasse erfolgt ausgecheckt/
Gibt es eine Idee, warum der 1.0.0-Tag-Ordner im SVN-Repo dort einen anderen "trunk" -Unterordner enthält?