[Biopython-dev] history on github - where are the tags?

Peter biopython at maubp.freeserve.co.uk
Tue Apr 21 16:29:19 UTC 2009


On Tue, Apr 21, 2009 at 4:19 PM, Bartek Wilczynski
<bartek at rezolwenta.eu.org> wrote:
> Hi,
>
>> There appears to be something less than ideal about our CVS to git
>> conversion.  I believe this relates to how the tag commits appear in
>> the commit tree - and it looks like for Biopython they are all tiny
>> branches off the main trunk.  i.e. If you look at the main trunk
>> history (overall or for any one file) then tags commits are not in it.
>>
>
> I haven't noticed this difference. It just seems to be the way cvs2got
> handles tags.  This behavior does not seem to be controllable from
> the config file. I'll try to ask on the cvs2git mailing list.
>
> In case it is not possible to change it in cvs2git itself, the worst
> scenario would be to re-tag the git tree manually (or with a help
> of some script). So there is no risk of loosing tags.
>
> I'll post when I have any progress onn this issue.

There is another option, redo the import using git cvsimport.  This
has the downside that we lose all the network history currently in
github, but its only going to affect a couple of people and that was
always a possibility.

I've just done this twice, firstly over the network (just over an
hour, probably a bad idea in terms of wasting the OBF bandwidth).
Then I succeeded in doing it locally (under 15 minutes) on my Mac
after logging into dev.open-bio.org and fetching a zipped up copy of
the CVS files.  The hard bit was working out how to get the CVSROOT
directory setup:

cvs -d $PWD/biopython_cvs init
cd biopython_cvs
unzip ../../Biopython-CVS-2009-04-21.zip
cd ..
time nice -n 10 git cvsimport -v -k -d
/Users/pjcock/repositories/bp_cvs_local_to_git/biopython_cvs  -C
biopython_git biopython

Both conversion appear to give the same result.  Using GitX the
history how shows the tags as I expect them to appear (nice yellow
markers on the main branch), and the tag side branches have gone:

$ cd biopython_git
$ git log --graph --all
...
|
* commit 6283ffe77fdd07ae678d2fa35ae9311ee7fd51ee
| Author: peterc <peterc>
| Date:   Mon Apr 20 16:07:41 2009 +0000
|
|     Bump the version number now that Biopython 1.50 is released
|
* commit 17a9b80f89be97fd4cc31d7c3618e82e4c83cafc
| Author: peterc <peterc>
| Date:   Mon Apr 20 10:48:31 2009 +0000
|
|     You don't have to email Iddo to get on the CONTRIB file
|
...

I'm not sure if "git log" can be told to show the tags itself.

Also, just like Bartek's conversion using cvs2svn, this also appears
to correctly identify simple file moving (when the add and delete are
done in one CVS operation, obviously not when it was done in two steps
like my recent changes in Bio.Graphics.GenomeDiagram).

Note - we can probably use
http://github.com/guides/change-author-details-in-commit-history to
map author names to github user names later, but in theory git
cvsimport will do this with the -A option.

Peter




More information about the Biopython-dev mailing list