Re: [eigen] git

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Am 28.04.2009 14:53, schrieb Benoit Jacob:
Hi,

We're considering moving to Git (or another DVCS).

The motivation is that lately there's been an increasing number of
people doing experiments around Eigen, and so far we haven't found a
way of making Eigen's SVN really friendly to that. There are 2 types
of problems:
a) one only asks for a KDE SVN account if one knows one'll keep
contributing in the future. But many people just want to be able to do
experiments with Eigen, code a potential new module, without making
that kind of commitment right away.
b) SVN is not as friendly as a DCVS for doing experiments and letting
other people use the code without commiting to the central repository.

We created the unsupported/ directory where we can add stuff without
being worried about maintainance, but that didn't solve the above
issues.

I don't know much about Git or DVCS's in general but my impression is
that it makes it easier to create your own branch of Eigen and then
let other people use it. I also believe that git is far more clever
than SVN at merging different branches. I would be interested in links
explaining how this is the case... or proving me wrong.

All this means moving out of the KDE tree (even if KDE moves to git in
the future that wouldn't solve a)).
But at the moment we have KDE trunk that relies on Eigen trunk. So in
order to keep things convenient for KDE, we could, in the short term,
keep a copy of eigen in kdesupport, where it is now, and update it
from time to time by re-syncing with the git repo (any pointer
appreciated as to best practice to do that).
As soon as Eigen 2.1 is released and distros have packages, we'll tell
people to use that. As, in the future, KDE will track eigen
development less closely, we'll be able to remove the copy in
kdesupport.

I absolutely want to preserve 100% of the SVN commit history across
this change. I was told this is possible and a friend offered to do
the move for us.

Questions:
a) Git or Mercurial or another DVCS? Here like elsewhere, I expect git
to be the most popular, but I don't have any opinions of my own as I'm
very ignorant in these matters. From IRC and mail I received several
"votes" for git and 1 for mercurial.

(I won't contribute to Eigen but still I have an opinion :-)

Both Git and Hq are great. Both are featurefull, both work very very fast. Hq is a bit better for Windows, but Git improved a lot on Windows in the last year. I am using Git on Windows and it works well for me.

In the end I guess it is a matter of taste, not a technical decision.

b) Where to look for hosting? I heard that github is nice and offers
useful features. The alternative would be tuxfamily which offers plain
git repos, but certainly not with the same fancy features.

I am using github.com on two projects and if I had to choose a host for a third project I would choose it again.

c) Any good git tutorial you'd especially recommend? especially
regarding dealing with different branches ?

I wrote this tutorial a year ago:

http://techbase.kde.org/index.php?title=Development/Tutorials/Git

I think it is a good starting point to get used to the most important aspects of a DCSV. I also linked two other tutorials.

Carsten



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/