[elinks-users] [ANNOUNCE] Switching VCS from CVS to GIT

Jonas Fonseca fonseca at diku.dk
Tue Sep 27 10:53:28 PDT 2005

Hello all,

During the last few weeks we have been switching version control
systems: retiring the old CVS in favour of the brand new GIT. Among
other things this means that the ELinks CVS interface effectively will
be obsolete as of this notice (well actually since 2005-09-15).

How to start getting ELinks via GIT is covered below, it is however not
a very complete guide so feel free to ask either via mail or in the IRC
channel. We hope that you will have a pleasent experience getting to
know GIT.

The GIT/Cogito Tool Chain

To get access to ELinks via GIT you will need to have the following
tools installed on your system:

 - The GIT core (http://kernel.org/pub/software/scm/git/):

	This is a set of lowlevel tools able of accessing and modifying
	a GIT tree.

 - The Cogito scripts (http://kernel.org/pub/software/scm/cogito/):

	Which is a set of bash scripts layered on top of the GIT core
	with the aim of making interacting with GIT trees more pleasent.

Note, you need to get a version of the GIT core which is compatible with
GIT core (there are still occasional backward incompatible changes).
Usually the most recent version of both packages will do and as a rule
of thumb the Cogito package should be newer than the GIT core package.
We have confirmed that git-core-0.99.6 and cogito-0.14.1 are working
together. (DO NOT use cogito-0.15.1 since it has a bug, so that also
rules out git-core-0.99.7d).

The GIT core has several dependencies; make sure you compile in support
for pulling over HTTP. For this you need to have libcurl installed
(along with the header files in libcurl-dev). If you are able to use
RPMs, both are accessible for the two packages.

Getting the Unstable and Stable trees

In the following, we will focus on getting the most recent version of
the stable and unstable trees. Links to document which covers more
advanced topics are available in the next last part of this mail.

You can get the latest unstable development version by doing:

	% cg clone http://elinks.or.cz/elinks.git
	% cd elinks

You can also get the latest stable development version via GIT. Note
that development in the stable branch is more slow and mostly involves
backporting of bug fixes. Just do this:

	% cg clone http://elinks.or.cz/elinks.git#REL_0_10 elinks-0.10
	% cd elinks-0.10

In both cases, this will get all changes from Thu Sep 15 15:57:07 CEST
2005 and onwards. We have chosen this to make the initial cloning more
cheap, besides if you are not going to do any development you probably
don't need the historical baggage.

However, the old CVS repository has been converted to GIT and is
available for those who needs it (note it will require downloading 90M
of data). To get hold of the full history do the following: After you
have cloned the current ELinks GIT tree, download the script at
http://elinks.or.cz/grafthistory.sh and run it in from the root of the
cloned tree. It will fetch packs containing the full history and link
them together with the current GIT tree. You can check by running cg log
and see if you have changes after the above mentioned date.

Getting More Info

You can browse the GIT trees online at http://pasky.or.cz/gitweb.cgi
(this will probably be relocated in the near future).

Cogito has an introduction to the basics, you will find it at

Additionally the manpages are online and accessible via
http://kernel.org/pub/software/scm/cogito/docs/cogito.html, apart from
cogito(7) the man pages for the individual commands are equivalent to
the output from either:

	cg <command> -h


	cg help <command>

As always, you are also welcome to join #elinks at irc.freenode.net and
ask questions on getting ELinks via GIT.

Jonas Fonseca

More information about the elinks-users mailing list