Difference between revisions of "Development workflow - webdev"

From WormBaseWiki
Jump to navigationJump to search
Line 10: Line 10:
 
Inside the <code>WormBase/website</code> repository, there are three main branches: <code>master</code>, <code>dev</code> and <code>production</code>.
 
Inside the <code>WormBase/website</code> repository, there are three main branches: <code>master</code>, <code>dev</code> and <code>production</code>.
  
* <code>master</code>: current, stable code. All new changes brought into master have been tested on [http://staging.wormbase.org staging.wormbase.org] and approved by either the curator requesting the change, or the lead developer.
+
* <code>master</code>: current, stable code. All new changes brought into master have been tested on [http://staging.wormbase.org staging.wormbase.org] and approved by either the curator requesting the change, or the development lead.
  
 
* <code>dev</code>: any features/changes ready for testing should be pushed to the <code>dev</code> branch. This code gets pushed nightly to [http://staging.wormbase.org staging.wormbase.org].
 
* <code>dev</code>: any features/changes ready for testing should be pushed to the <code>dev</code> branch. This code gets pushed nightly to [http://staging.wormbase.org staging.wormbase.org].

Revision as of 19:58, 6 March 2013

This page describes the development model used by the web development team at WormBase using git. This includes our branching strategy and release management.

Diagram

Git Workflow - WormBase1.png

Editable version of the diagram

Branch Strategy

Main branches

Inside the WormBase/website repository, there are three main branches: master, dev and production.

  • master: current, stable code. All new changes brought into master have been tested on staging.wormbase.org and approved by either the curator requesting the change, or the development lead.
  • dev: any features/changes ready for testing should be pushed to the dev branch. This code gets pushed nightly to staging.wormbase.org.
  • production: the code currently in production. Branched off of master at each release.

Supporting branches

feature branches

hotfixes

Commits to dev

Merging dev to master

Release Management

Example Workflow

New Feature

New Feature (Large)

Hotfix to production

New production release

Links