Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 38 Next »

Version Control

The IGB project uses git for version control. Previously, we used svn (subversion) and cvs. We migrated from an svn repository on SourceForge to a git repository on Bitbucket in 2014.

The repository address is: https://bitbucket.org/lorainelab/integrated-genome-browser.

When you clone from this repository, by default you'll get the master branch, the latest, most recent version of the code base.

Repository branches

IGB repository branches include:

  • Master branch - code under active development
  • Release branches - branches corresponding to released version of IGB on BioViz.org. Release branches are named using the convention igb_[N]_[M] where N and M are integers (e.g. igb_8_2). 

How release branches correspond to IGB release names for users

When we distribute IGB to users, we assign version names such as 8.3.0 or 8.4.2, following the naming convention [N].[M].[P], where N, M, and P are integers. The N and M numbers come from release branch name. The final ".P" suffix signifies low-risk, small changes that we merged from the master branch into a release branch and distributed to users as a "minor" release. 

A "major" release is anything that increments either first or second version number of IGB for users (e.g., 8.3.4 to 8.4.0 is a major release). When we do a major release, we create a release branch from the master branch.

A "minor" release is is anything that increments the final ".P" suffix version number of IGB for users (e.g., 8.3.0 to 8.3.1 is a minor release) and which requires merging a small amount of code from the development (master) branch into the release branch.

When developing IGB, you should make changes to the master branch. For details, see Developing IGB.

IGB code base

The IGB repository is organized into sub-projects, including:

  • genometry - genomic data models used in IGB and the DAS server code
  • igb - the core IGB application
  • plugins - functions added via plug-in interface, plug-ins are also called bundles (uses OSGi)
  • common - common classes used by the other projects

QuickLoad Testing

The following git repository contains broken QuickLoad sites that are helpful for testing within IGB.

https://bitbucket.org/lorainelab/brokenquickloads

Genoviz SDK

IGB depends on the Genoviz Software Development Kit (Genoviz SDK) which is version-controlled in a separate repository at https://bitbucket.org/lorainelab/genoviz-sdk. When you build IGB, the compilation tool we use (maven) will obtain the latest copy of the genoviz compiled code (a "jar" file) and install it locally.

Release Tags

When creating a release, we sometimes create a tag indicating at what point the release was built.

GenoPub project

For information about the GenoPub project, please contact David Nix, Huntsman Cancer Institute.

  • No labels