gPyFm

From Genunix

Jump to: navigation, search

Contents

gPyFm (pronounced guppy foam)

Introduction

Guppy foam is a pyGTK re-write of the old TeamWare filemerge utility. At no time was the source code of TeamWare filemerge consulted for this new version. Stephen named the utility as we are unsure of any trademark status for "filemerge".

There are many file file comparison tools available today. So why yet another one? There was a thread on tools-discuss that investigated several possible GUI file merging programs for Mercurial. Of the possibilities, meld (another pyGTK application) was considered the best available, and packages for meld will probably appear in SFW. It was decided that something that resembled the TeamWare filemerge would still be desirable. The main complaint of meld being that it has all three windows side by side instead of a 2:1 format.

gpyfm is the mercurial front end for the fm python package. So far work has been focused exclusively on making gpyfm work with mercurial.

gpyfm was originally written by David Marker (assitant ON Nevada gatekeeper). Richard Lowe, one of the project leads for SCM Migration has already contributed some fixes. See gPyFm#Code for information on getting the source if you are interested in helping out.

Use

In order to use gpyfm (the utility) you will need to have python, and pyGTK installed on your system. On Solaris this means you should have SUNWPython SUNWgnome-python-desktop (XXX need to verify this). Solaris Express Developer Edition will have the necessary libs to run gpyfm.

gpyfm is not really intended to be called directly by the user with mercurial. In order to have mercurial use gpyfm, you need to follow the instructions for MergeProgrm. That is either:

  • Set the merge variable in the ui section of your .hgrc
  [ui]
  merge = gpyfm 
  • Set the HGMERGE environment variable (csh or sh like shell):
  setenv HGMERGE=gpyfm
  HGMERGE=gpyfm
  export HGMERGE

You could now follow Tutorial Conflict from the Mercurial wiki. (If you aren't very familiar with mercurial you should go through the whole tutorial 1st, after setting Mercurial up to use gpyfm).

Alternately, if you have downloaded the source, you can run one of the manual tests:

  cd usr/src/tools/fm/Test/manual/1/a
  ./test.sh

You can try the gpyfm-tutorial to get a better idea of how it is used.

Code

(( Is there any way I can download this without downloading the rest of OpenSolaris? )) You can get gpyfm by via

hg clone ssh://anon@hg.opensolaris.org/hg/scm-migration/gpyfm-gate

Bugs

You can use this link to search for current bugs.

At present gpyfm is complete enough to use, but I will be filing more bugs to capture remaining work soon. -Dave

Personal tools