Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Branches Talk


Published on

Branches, branches, everywhere, no time left to code

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Branches Talk

  1. 1. Branches, branches, everywhere, no time left to code Konstantin Komissarchik Component Lead, Oracle Eclipse Tooling Team
  2. 2. Branches <ul><li>The Good </li></ul><ul><ul><li>Allow work on multiple releases to progress in parallel </li></ul></ul><ul><ul><li>Allow for high-fidelity support of multiple platforms per release </li></ul></ul><ul><li>The Bad </li></ul><ul><ul><li>Extra effort from developers to propagate changes </li></ul></ul><ul><ul><li>Fear of loosing changes between code lines </li></ul></ul><ul><ul><li>Uncertainty over where changes must go </li></ul></ul>
  3. 3. Trunk Branching Model release 1 release 1 maintenance release 3 release 2 release 2 maintenance … … …
  4. 4. Waterfall Branching Model <ul><li>First-level bullet </li></ul><ul><li>Second-level bullet </li></ul><ul><ul><li>Third-level bullet </li></ul></ul><ul><ul><ul><li>Fourth-level bullet </li></ul></ul></ul><ul><ul><ul><ul><li>Fifth-level bullet </li></ul></ul></ul></ul>release 3 release 1 release 2 maintenance maintenance … … …
  5. 5. Auto-Merge
  6. 6. Dashboard <ul><li>Shows </li></ul><ul><ul><li>Visual representation of branch relationships </li></ul></ul><ul><ul><li>Status of merge queues </li></ul></ul><ul><ul><li>Detailed listing of unmerged changes </li></ul></ul><ul><li>Answers questions like </li></ul><ul><ul><li>How far has change X propagated? </li></ul></ul><ul><ul><li>Who is blocking the merge queue? </li></ul></ul>
  7. 7. Dashboard
  8. 8. Summary <ul><li>Waterfall branch structure leads to less complexity </li></ul><ul><li>Automated merging further lowers branching overhead </li></ul><ul><ul><li>Fully automatic operation for majority of changes </li></ul></ul><ul><ul><li>No need to have someone responsible for doing bulk merges </li></ul></ul><ul><ul><li>Conflicts are minimized by merging changes sequentially </li></ul></ul><ul><ul><li>No need to worry about loosing changes </li></ul></ul><ul><li>Speaker Information </li></ul><ul><ul><li>Konstantin Komissarchik </li></ul></ul><ul><ul><li>Component Lead, Oracle Enterprise Pack for Eclipse </li></ul></ul><ul><ul><li>[email_address] </li></ul></ul>