Difference between revisions of "Platform UI/Git"

From Eclipsepedia

Jump to: navigation, search
(added repos using Git wiki template (which is pretty cool :))
(Development and maintenance branches to use)
Line 46: Line 46:
 
! Why
 
! Why
 
|-
 
|-
| R4_development
+
| master
| All Juno related work, both 4.2 and 3.8 that doesn't include the ''org.eclipse.ui.workbench''.  For now this also includes 4.1.1 work.
+
| All Juno related work, both 4.2 and 3.8 that doesn't include the ''org.eclipse.ui.workbench''.
 
|-
 
|-
 
| R3_development
 
| R3_development
Line 53: Line 53:
 
|-
 
|-
 
| R3_7_maintenance
 
| R3_7_maintenance
| Our standard maintenance branch for 3.7.1/Indigo SR1
+
| Our standard maintenance branch for 3.7.2/Indigo SR2
 +
|-
 +
| R4_1_maintenance
 +
| Work on fixes for 4.1.1/4.1.2
 
|-
 
|-
 
| R3_6_maintenance
 
| R3_6_maintenance
 
| The maintenance branch for any '''3.6.2+''' contributions.
 
| The maintenance branch for any '''3.6.2+''' contributions.
 
|-
 
|-
| master
+
| R4_development
| Don't commit to this branch at this time.
+
| Don't commit to this branch, it has been deleted.
 
|}
 
|}
  

Revision as of 11:03, 18 November 2011

Contents

Platform UI Git repos for 4.2/3.8

General Introduction

Important: After you install EGit, please refer to Platform-releng/Git Workflows for a description of our common git workflows. For Platform UI, that means setting the default Pull for your branch to do a rebase merge instead of a normal merge.

For all work, we use the UI and Runtime repos. Runtime has org.eclipse.core.tests.harness and the org.eclipse.core.expressions bundles and tests. UI has everything else.

  • ssh://userid@git.eclipse.org/gitroot/platform/eclipse.platform.ui.git
  • ssh://userid@git.eclipse.org/gitroot/platform/eclipse.platform.runtime.git

To clone the repositories anonymous use:


Additionally, to present (for casual browsing) the repos using the handy Git wiki template:

eclipse.platform.ui.git (browse, stats, fork on OrionHub)

eclipse.platform.runtime.git (browse, stats, fork on OrionHub)


NOTE:
org.eclipse.test.performance will be in the releng repo, but for now you need it from :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse path=org.eclipse.test.performance


For 4.2 work we are also responsible for:

  • ssh://userid@git.eclipse.org/gitroot/e4/org.eclipse.e4.ui.git
  • ssh://userid@git.eclipse.org/gitroot/e4/org.eclipse.e4.tools.git

Our Eclipse4/4.2 releng project is still at :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse path=e4/releng


For a record of the Platform UI migration, please see Platform UI/Git Migration

Development in Juno

Development and maintenance branches to use

For eclipse.platform.ui.git:

Branch Why
master All Juno related work, both 4.2 and 3.8 that doesn't include the org.eclipse.ui.workbench.
R3_development Work that needs the 3.8 org.eclipse.ui.workbench. Juno related work that is not related to the org.eclipse.ui.workbench bundle should also be pushed here.
R3_7_maintenance Our standard maintenance branch for 3.7.2/Indigo SR2
R4_1_maintenance Work on fixes for 4.1.1/4.1.2
R3_6_maintenance The maintenance branch for any 3.6.2+ contributions.
R4_development Don't commit to this branch, it has been deleted.

For all other repositories:

Branch Why
master All Juno related work, both 4.2 and 3.8.
R3_7_maintenance Our standard maintenance branch for 3.7.1/Indigo SR1

Using git right now in eclipse.platform.ui.git - explanation

Right now our build dependencies are:

  1. 3.8 I build
  2. 4.2 I build picks up most content from 3.8
  3. e4 0.12 builds on top of 4.2 I build

Because 3.8 is build first and 3.8 is run as the nightlies, PDE build supports one replacement fetchTag per repo type, and for our nightlies it is GIT=master.

Until we get this resolved, I propose we do our Juno work (4.2 and any 3.8 work that doesn't touch the org.eclipse.ui.workbench) in R4_development. We should do any 3.8 org.eclipse.ui.workbench work in R3_development, and anything that's not workbench related from R4_development I'll merge or cherry-pick across for the 3.8 builds.

I'll be managing master by tracking one or the other of the branches. Please don't commit to master until we figure out #Our goal in Juno M2

Our goal in Juno M2

The main focus our Platform UI's Juno development is 4.2. To that end, we expect to do most of our work on master. It will contain all of the Platform UI plugins as they were in 3.7 except for our forked compatibility layer, org.eclipse.ui.workbench. It will contain all of our Eclipse 4 UI plugins (Modeled Workbench, CSS Support, Eclipse4 Applications) as they were in 4.1. And it will contain the forked compatibility layer.

All work in Juno on any plugins that haven't been deliberately forked (and so far that short list only includes org.eclipse.ui.workbench) should happen in master. So working on JFace in 3.8/4.2 really means working on master.

Any work that needs to be done in the 3.8 org.eclipse.ui.workbench should be done in the R3_development branch. This will be created off of the R3_7 tag.

Platform UI plugins in 3.8

We could simply pick up all plugin changes from master except org.eclipse.ui.workbench. But that would leave your R3_development branch in an odd state (as you would have to depend on your target platform for 3.8 source). The other proposal is to regularly merge work in master into R3_development so that the other plugins are up to date. We haven't made a final decision here.


Development in 3.7.1

All work on plugins for 3.7.1 should be done in the R3_7_maintenance branch off of tag R3_7. It has already been created.