Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Scout/Contribution Guidelines"

(Git Branching Policy)
(Git Branching Policy)
Line 27: Line 27:
 
  | develop
 
  | develop
 
  | Contains the very latest sources. This branch is used for building the nightly version and contains the development of the newest features that usually will be available to the next stable release.
 
  | Contains the very latest sources. This branch is used for building the nightly version and contains the development of the newest features that usually will be available to the next stable release.
  | develop: development for 3.10.0 release (Luna)
+
  | develop: development for 4.0.0 release (Luna)
 
  | http://download.eclipse.org/scout/nightly
 
  | http://download.eclipse.org/scout/nightly
 
  |-
 
  |-

Revision as of 05:10, 17 February 2014

The Scout documentation has been moved to https://eclipsescout.github.io/.

Scout is using GIT flow. For more information about GIT flow see [1]and [2].

Learn how to contribute step by step: Scout/Contributions_for_Scout_Committers

Why do we use Git and Gerrit?

These are the advantages that are relevant to us:

  • Easy Local Branching: Creating and using multiple local branches for different features is easy and fast. We can work on more than one feature or bugfix in parallel, if necessary. We can do experiments without any worries to mess up anything important.
  • Fast Switching: With Git it is faster to switch between different versions. This is useful to analyze different behaviour between versions and find bugs.
  • External Contributions: We can handle contributions from non-committers faster and more easily. Up until now there where only a few contributions from non-committers pushed to gerrit.
  • Stability: Git and Gerrit helps to make continuous integration easier, because only contributions that build sucessfully (and unit tests pass) are contributed into the main repository. This makes our environment more stable.
  • Integration with Maven/Tycho Build: Git works well with maven/tycho. E.g. we use the git timestamp as a qualifier for the plugin artefacts. Snapshot binaries are only new for new changes.

Git Branching Policy

The following table describes the branching policy used for the Eclipse Scout Git Repositories (http://git.eclipse.org/c/scout/).

Branch Usage Current (2013-12-20) P2
develop Contains the very latest sources. This branch is used for building the nightly version and contains the development of the newest features that usually will be available to the next stable release. develop: development for 4.0.0 release (Luna) http://download.eclipse.org/scout/nightly
master Contains the sources of the latest stable release. master: stable branch for 3.9.1 (Kepler) release http://download.eclipse.org/scout/releases
x.y (e.g. 3.8) Version branches containing the sources for the corresponding Scout version. These branches exist as long as the corresponding version of Scout is still supported and releases containing bugfixes are shipped. 3.8: stable branch for 3.8 (Juno) release http://download.eclipse.org/scout/x.y
release/<release_name> Contains the development for the corresponding releases. So e.g. a release branch named 3.10.1 contains the fixes for the Luna service release 1. These branches will be merged into the origin branch (the branch from where the release branch has been created) and develop branch as soon as the corresponding release is shipped. Afterwards the branch is deleted and the merge into the origin branch is tagged. release/3.9.2: bugfix branch for 3.9.2 (Kepler SR2) http://download.eclipse.org/scout/x.y/x.y.z
features/<developer_user_name>/<feature> Contains developer private feature branches that contain the developments of new features. As soon as the feature development is complete, this branch is merged into the develop branch and the feature branch is deleted. If multiple developers are working on the same feature, the username of the main responsible is used. - -
hotfix/<hotfix_name> Contains branches in which hotfixes for a release are developed. After the hotfix development is complete, the hotfix branch is merged into the develop and the origin branch (the branch from where the hotfix branch has been created). Then the origin branch is tagged and the hotfix branch is deleted. - -

Git Repositories and current Branches

Please see http://wiki.eclipse.org/Scout/Contribution#Getting_the_Scout_Sources.

Known Issues

  • It happened before that our company IP was blocked for ssh connection to git.eclipse.org/dev.eclipse.org. -> Mail or create a bug to webmaster. Remember that ssh is not necessary for fetch.

Back to the top