1 / 8

Branching, Switching and tagging

Branching, Switching and tagging. Francesco Furfari CNR-ISTI Italy. Sandbox Usage 1 for major and minor changes . C1-V1.0.2. C1-V1.2.0. C1-V1.2.0 Validation. C1-V1.2.0 validated. Branch. Merge. Trunk/c2. Sandbox/D1. Tag/c1-V1.0.0. Trunk/c1. Tag/c1-V1.2.0. V1.0.0. V1.0.1. V1.0.2.

verena
Download Presentation

Branching, Switching and tagging

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Branching, Switching and tagging Francesco Furfari CNR-ISTI Italy

  2. Sandbox Usage 1for major and minor changes C1-V1.0.2 C1-V1.2.0 C1-V1.2.0 Validation C1-V1.2.0 validated Branch Merge Trunk/c2 Sandbox/D1 Tag/c1-V1.0.0 Trunk/c1 Tag/c1-V1.2.0 V1.0.0 V1.0.1 V1.0.2 V1.2.0 V1.2.1 Released &Tagged Tagged

  3. Developers Local ViewD1 & D2 (Validator) C1-V1.2.0 Validation Switch and test V1.0.2 Artefact version unchanged, always aligned to the trunk V1.0.2 Switch C1-V1.0.2 C1-V1.2.0 Svn:Sandbox/D1 D2 -- local:trunk/c1 D1 -- local:trunk/c1 Svn:Trunk/c1 Svn:Trunk/c2 validated Update Artifact version to 1.2.0 Switch commit V1.0.1 V1.0.2 V1.0.2 V1.2.0 V1.2.0 commits Branch Merge V1.0.1 V1.0.2 V1.2.0 V1.2.1

  4. Sandbox usage 1.aArtefact development shared among several developers C1-V1.0.2 C1-V1.2.0 C1-V1.2.0 Validation C1-V1.2.0 validated Merge Merge Merge Branch Svn:Sandbox/D1 Svn:Trunk/c2 D2 -- local:trunk/c1 Svn: Trunk/c1 V1.0.0 V1.0.1 V1.0.2 V1.0.3 V1.0.4 V1.2.0 V1.2.1 Commit Commit V1.0.3 V1.0.4 Tagged Tag/c1-V1.2.0

  5. Sandbox Usage 2 for bug fixing of released software V1.2.1 V1.2.0 V1.0.0 V1.0.1 V1.0.2 Released &Tagged Tag/c1-V1.0.0-patch-123 Svn: Sandbox/D1 Tag/c1-V1.0.0 Trunk/c2 D1 -- local:trunk/c1 Trunk/c1 Branch Merge or Porting Release Patch &Tag C1-V1.0.0-bug-123 C1-V1.0.0-bug-123 C1-V1.0.0 validated C1-V1.2.0 evaluate & apply Switch Commit Switch V1.2.1 C1-V1.0.0 bug fixed V1.2.1

  6. Sandbox Usage 3 applying external patches V1.0.2 V1.2.0 V1.2.1 V1.2.2 Branch D1 -- local:trunk/c1 Trunk/c1 Svn: Sandbox/D1 C1-V1.2.1-patch-456 C1-V1.2.1-patch-456 validate Merge Switch Switch Commit V1.2.1 Apply patch-456 V1.2.1 V1.2.1

  7. Multi-component changes V1.0.1 V1.1.0 V1.2.1 V1.2.2 V2.0.0 V3.4.0 V3.0.2 Replace Branch Merge Svn:Branches/NewFeature/c2 Svn:Branches/NewFeature/c1 Svn:Trunk/c1 Svn:Trunk/c2 Validate V1.0.1 V2.0.0 V2.0.0 V3.0.2 V3.3.0 V3.4.0 V3.4.0

  8. Development options • Each artefact (bundle) should have one developer • Changes to artefact are accepted and delegated from the main developer (responsible) • Complex artefacts may have several developers who appoint a coordinator (leader) • Changes must be coordinated in the group and notified (automatically) • Changes/bug fixes provided by a developers external to the bundle development should be tracked and applied as patches from the developers coordinating the bundle development. • Changes and release of multiple artefacts should be coordinated and developed in new branches that are merged when the code is ready and validated. • Sandboxes should be intensively used for each activity that requires testing of the code from third developers • Alternative implementation of the same artefact should be developed in the sandbox , validated and moved to the trunk with a different name.

More Related