Discussion:
[Xmltv-devel] Possible move from CVS to GIT: comments?
Robert Eden
2011-02-10 06:45:55 UTC
Permalink
As most of you know on 1/26 Sourceforge engineers detected a successful
attack on their CVS services. SF is in the process of validating the
data and securing the systems. Everything is back up, except for CVS
which should return by the end of the week.

SF has mentioned they are considering retiring CVS and having projects
move to SVN or GIT. I've never personally used GIT, but am comfortable
with SVN. Mattias and Nick are both more active than me lately and
prefer GIT (correct me if I'm wrong guys).

One plan would be to keep hosting at Sourceforge and use their GIT
service as the primary. A secondary public server would be at Github as
a backup. I assume Mattias or Nick would do some magic to keep the two
in sync.

My question to all the developers out there, does anyone have a strong
feeling against GIT, if so why?

I don't want to see developers abandon their code over this.

Robert
.
Davide Chiarini
2011-02-10 07:30:32 UTC
Permalink
for me xmltv is a project where revisioning is not very important. Most
developers take care of their own grabber and rarely modify the others.
So far I liked the ease of use of CVS through tortoiseCVS on windows +
putty's pageant for authentication.
Are there similar tools for git or svn? other than that, I have no
preference.

regards
davide
Or Cohen
2011-02-10 07:57:54 UTC
Permalink
On Thu, Feb 10, 2011 at 9:30 AM, Davide Chiarini
Post by Davide Chiarini
for me xmltv is a project where revisioning is not very important. Most
developers take care of their own grabber and rarely modify the others.
So far I liked the ease of use of CVS through tortoiseCVS on windows +
putty's pageant for authentication.
Are there similar tools for git or svn? other than that, I have no
preference.
There's http://tortoisesvn.tigris.org/ :)
Chris Butler
2011-02-10 09:43:31 UTC
Permalink
Post by Or Cohen
On Thu, Feb 10, 2011 at 9:30 AM, Davide Chiarini
Post by Davide Chiarini
So far I liked the ease of use of CVS through tortoiseCVS on windows +
putty's pageant for authentication.
Are there similar tools for git or svn? other than that, I have no
preference.
There's http://tortoisesvn.tigris.org/ :)
There's also TortoiseGit:

http://code.google.com/p/tortoisegit/


FWIW, I'm comfortable with either svn or git, although I'm starting to
prefer git these days. I switched my repo for xmltv's Debian packaging from
svn to git about a year ago.

One advantage of git is that you're not tied to one host for the main repo;
it can easily be mirrored elsewhere.
--
Chris Butler <***@debian.org>
GnuPG Key ID: 4096R/49E3ACD3
Nick Morrott
2011-02-11 03:31:46 UTC
Permalink
As most of you know on 1/26  Sourceforge engineers detected a successful
attack on their CVS services.   SF is in the process of validating the
data and securing the systems.  Everything is back up, except for CVS
which should return by the end of the week.
SF has mentioned they are considering retiring CVS and having projects
move to SVN or GIT.   I've never personally used GIT, but am comfortable
with SVN.  Mattias and Nick are both more active than me lately and
prefer GIT (correct me if I'm wrong guys).
I would prefer Git either CVS or SVN going forwards. Incidentally,
when I gave a talk on XMLTV to a local Perl Mongers meeting last year
the usage of CVS and lack of Git was seen as a likely barrier to new
developers ("CVS - what's that?"...). Whether this is actually the
case I don't know (and doubt to an extent), but with more and more
active developers using Git - and other distributed VCS software -
coupled with the ease at which you can throw code around in git, I can
see their point. The linear and segregated development of XMLTV lends
well to the current CVS usage (as Davide mentions, although I disagree
about his revisioning comment) and it's not a surprise that existing
developers are comfortable using it.

I do wonder that if there is a hesitancy for new developers to
contribute, whether that hesitancy is brought about because of

i) the need to learn a VCS they are not familiar with; or
ii) the inflexibility of CVS compared to git that will restrict their
ability to play with the code
My question to all the developers out there, does anyone have a strong
feeling against GIT, if so why?
Here are some of my thoughts in support of a move to Git (or keeping
the status quo) and against a move to Subversion:

If there is a change of versioning system, moving to Subversion rather
than Git (or another distributed VCS) would be a backwards move in my
opinion. The project would still suffer from the same central
repository problem that the current CVS deployment does, and the
benefits of SVN over CVS for a project with the commit activity of
XMLTV would be negligible at best (again, IMO based on my XMLTV
development experience).

SVN: same disadvantages as CVS, no real advantages, not worth the effort.
Git: new, so devs would need to learn to use it, real advantages,
worth it (both now and in the longer term).

i) Moving to Git gives everybody who clones the repository a local
copy of the entire development history, which can be worked on and
committed to even when offline.

ii) Committing to SF Git would be a two command process (git
commit...; git push ...), rather than the current single command (cvs
commit ...) required at present. Not exactly a burden.

iii) The additional disk space requirement for a git clone of the
XMLTV repository is negligible in absolute terms (an increase of ~5MB
over the 10MB used for a particular CVS checkout).

iv) As Chris noted, the benefit of moving to Git is the option of
having online mirrors of the primary Git repository that can be pulled
from or pushed to as necessary.

v) Git commits are cryptographically signed, which means it is
impossible to change existing code without alarm bells going off. One
of the key reasons for the delay in SF getting the CVS service back
online was due to the lack of such support making data validation a
much more significant effort.

vi) Git is available on most platforms including Linux, Mac and Windows.

vii) This week's SF CVS outage is the only major issue I can remember
since I started contributing some years ago, and I think it would be
good to continue to use SF's services for the project. I would suggest
moving across to SourceForge's Git service (if we are going to change
VCS) and keeping one or more mirrors (Github, etc) that are kept in
sync and can be used as backups if SF suffers any future outages.
I don't want to see developers abandon their code over this.
Me neither. CVS seems to have served the project well over the years,
and if there is no overriding feeling to move away from it, that's OK.
I wonder from time to time how many XMLTV developers contribute to
other projects and whether they are asking the same question.

I guess the CVS vs SVN vs Git issue will just turn into a variant of
the age-old "Why doesn't the project have a forum instead of a mailing
list" question.

Cheers,
Nick
--
Nick Morrott

MythTV Official wiki: http://mythtv.org/wiki/
MythTV users list archive: http://www.gossamer-threads.com/lists/mythtv/users

"An investment in knowledge always pays the best interest." - Benjamin Franklin
Robert Eden
2011-02-11 04:50:40 UTC
Permalink
Excellent points Nick, especially the signed commits one. I never thought I would support a move away from CVS for XMLTV, but I've already crested
that hill (the possibility). I imagine sticking with SF solves a lot of the user migration issues since everyone is already signed up.

I'm planning on installing TortoiseGit and giving it a shot, I don't think it will be that difficult on Windows. Is there a XMLTV GIT repository
that we can play with? Commit bogus changes, without breaking anything (official dist is still cvs).

I imagine the only script that will need to be modified is the "mkdist" script.


Robert
Mattias Holmlund
2011-02-11 05:11:37 UTC
Permalink
Post by Robert Eden
Excellent points Nick, especially the signed commits one. I never thought I would support a move away from CVS for XMLTV, but I've already crested
that hill (the possibility). I imagine sticking with SF solves a lot of the user migration issues since everyone is already signed up.
I'm planning on installing TortoiseGit and giving it a shot, I don't think it will be that difficult on Windows. Is there a XMLTV GIT repository
that we can play with? Commit bogus changes, without breaking anything (official dist is still cvs).
You can do

git clone git://github.com/mattiash/xmltv.git

to get a clone of xmltv as it was a few days ago. With that clone, you
can try out anything except the actual push. The repository is read only
so you can never destroy anything.

Note that the github repository is not updated automatically from CVS.
It is a static snapshot.

/Mattias
Robert Eden
2011-02-11 05:15:21 UTC
Permalink
Post by Mattias Holmlund
You can do
git clone git://github.com/mattiash/xmltv.git
to get a clone of xmltv as it was a few days ago. With that clone, you
can try out anything except the actual push.
I think testing a push as well as seeing how other people's pushes are integrated are important tests.

Robert

Loading...