Skip to content
millerjv edited this page Nov 6, 2012 · 22 revisions

jqplot hg git bridge

Purpose

This repository is part of a bridge between hg and git. jqplot uses Mercurial while the Slicer4 SuperBuild process supports git and not hg. This repository is a clone of the Mercurial repository forked from the master jqplot repository on BitBucket. This repository supports the Slicer4 build process and allow us to develop patches. Patches will be applied directly to the github version, then bridged back to Mercurial, pushed back to BitBucket, and offered back to the jqplot developers.

This strategy was chosen because

  1. SuperBuild is complicated enough without introducing a forth revision control system (svn, git, cvs).
  2. Slicer will utilize these patches to jqplot even if jqplot decides not to accept them
  3. Slicer's development timeline is asynchronous with jqplot's development timeline
  4. Patches are expected to be few and far between, so the manual bridging from git back to hg is a rare event

Repositories

  • hg: https://bitbucket.org/cleonello/jqplot - Central jqplot hg repository
  • hg: https://bitbucket.org/millerjv/jqplot - Fork of jqplot to make it easier to offer patches back
  • git: git://github.com/millerjv/jqplot.git - Jim's git version of jqplot.
  • git://github.com/Slicer/jqplot.git - (Not created yet) Slicer's official git repository for jqplot
  • git://github.com/Slicer/jqPlot.git - First implementation of integrating jqplot into the Slicer build process. This repository only holds a tarball of the official distribution. This was used before we needed to create patches to jqplot. A separate repository was used because Slicer's build process could download from a secure server (which is jqplot's default).

This bridge of hg and git requires a checkout to act as the intermediary between hg and git. This intermediary repository uses hg-git (http://hg-git.github.com/). See the directions there on how to configure hg to have a git bridge.

Instructions to synchronize the hg and git bridge repository on Jim's machine.

Location of bridge repository

$ cd ~/Projects/jqplot-hg-git-bridge/jqplot

To pull updates to jqplot from bitbucket

$ hg pull

To apply updates to the jqplot working directory

$ hg update tip

To push updates to github

$ hg push git+ssh://[email protected]/millerjv/jqplot.git

To pull updates from github

$ hg pull git+ssh://[email protected]/millerjv/jqplot.git

Building the tarballs

$ hg clone git+ssh://[email protected]/millerjv/jqplot.git
$ hg update 1.0.4-Slicer4
$ ant compress
Clone this wiki locally