Maven/Subversion

Jetzt loslegen. Gratis!
oder registrieren mit Ihrer E-Mail-Adresse
Rocket clouds
Maven/Subversion von Mind Map: Maven/Subversion

1. Profile

1.1. nach Axis

1.1.1. Axis 1.1

1.1.2. Axis 1.3

1.1.3. Axis 2 ?

2. Archetype

2.1. für freenet-Projekte

2.2. für OMS-Projekte

2.3. für Tapestry-Projekte

2.4. Vererbung

3. Parent-POM

3.1. Definition der Profile

3.2. allg. Dependencies

3.3. Def. von Versionsnummern

3.4. allg. Plugin-Einstellungen

3.5. allg. Extensions

4. Versionierung

4.1. Versionsnummer von Branches

4.1.1. muss sich in Branches unterscheiden

4.2. major.minor.patch

4.2.1. Definition von http://docs.codehaus.org/display/GEOT/5.+9+Versioning

4.2.1.1. major

4.2.1.1.1. is incremented to indicate that a module has lost full compatibility to earlier versions. So you can safely upgrade to later versions of a module so long as the major version has not changed.

4.2.1.2. minor

4.2.1.2.1. is incremented whenever new features are added. Modules are forward compatible across minor versions, but usually not backward compatible

4.2.1.3. patch

4.2.1.3.1. is for bug fixes. It is used to indicate fixes in bugs only. No new features were made and full compatibility is preserved.

5. Release-Management

6. Verwendung von Snapshots

7. Assemblies

7.1. Meta-Projekte

7.1.1. WorkflowProcessor

7.1.2. Tomcat-Umgebung

8. Probleme bei der täglichen Arbeit

8.1. Herstellung einer Entwicklungsumgebung

8.1.1. viele voneinander abhängige Projekte

8.1.2. manchmal ist Update in abhängigen Projekten notwendig, damit eigenes Projekt übersetzt

8.2. Bereitstellung von Testversionen

8.3. fehlende Abhängigkeiten beim Deployment

8.4. Bugfixes für Production Release

8.4.1. geht mit Release-Tags im Subversion

8.5. Bereitstellung von Features für Test/Produktionsumgebungen

8.5.1. Features werden separat getestet und müssen dann auch separat live genommen werden können

8.5.1.1. pro Feature ein Branch

8.5.1.1.1. Merge-Stress

9. Branches

9.1. Flying Fish

9.2. svnmerge

10. Entwicklung-Cycle

10.1. neues Feature implementieren

10.2. Unit-Test

10.2.1. danach Bugfixing

10.3. Integrationstest

10.3.1. muss unabhängig von anderen neuen Features sein

10.3.2. danach Bugfixing

10.4. Live-Stellung

10.4.1. danach Bugfixing

11. Vorschlag Entwicklungs-Cycle

11.1. Entwicklung eines neuen Features auf Branch

11.1.1. Maven-Versionsnummer enthält Branch?

11.1.2. regelmäßiger Merge von Trunk

11.2. Bereitstellung eines Snapshot-Release für Integrationstest

11.3. Nach Freigabe durch QS Merge in Trunk, Branch schließen, Release erstellen (minor++,patch=0)

11.4. Live-Stellung mit Production-Release

11.5. Bugfixing von Production-Release

11.5.1. auf Release-Branch entwickeln

11.5.1.1. ändern auf SNAPSHOT

11.5.2. Snapshot-Release für Integrationstest bereitstellen

11.5.3. nach Freigabe durch QS Release erstellen (patch++)

12. Qualitätssicherung

13. Continuum