Re: FileSystem Question
- To: firstname.lastname@example.org
- Subject: Re: FileSystem Question
- From: William Pursell <email@example.com>
- Date: Sun, 01 Jul 2007 07:28:32 +0100
- Message-id: <firstname.lastname@example.org>
- In-reply-to: <HYydndalz6c1RRvbnZ2dnUVZ_vWtnZ2d@comcast.com>
- References: <email@example.com> <46854D89.firstname.lastname@example.org> <email@example.com> <20070629225446.GC7501@titan> <firstname.lastname@example.org> <20070630190053.GA9410@titan> <4686D3B5.email@example.com> <HYydndalz6c1RRvbnZ2dnUVZ_vWtnZ2d@comcast.com>
Glen Pfeiffer wrote:
On 06/30/2007 03:00 PM, William Pursell wrote:
Keep in mind that CVS is extremely old, and entirely obsolete.
Subversion was a new implementation of the same idea, and did
in fact address many of CVS's shortcomings.
I second that.
However, if you are going to look into using a VCS (Version
Control System) for doing backups like this, look into git.
Care to explain why you suggest using Git. I cannot find a reason
to use it unless one needs good decentralized version control.
I was (and I suppose still am) a huge fan of subversion. I
loved RCS, hated CVS, and found subversion to be a God-send.
I started using git about 3 weeks ago, and in that short
time I've found that its flexibility has already changed
my work flow (for the better). In particular, it is actually
*easy* to merge. The decentralized nature of it is
really nice for (at least) one big reason--it strongly
encourages 'commit-early, commit often', since you can
munge your own repository as much as you want, and then only
push clean versions into the central repository.
Another point: consider the case in which you spend an hour
working, and then realize that you do not want to incorporate
those changes into the trunk. In subversion, if you didn't
make a branch an hour ago, you've got a little bit of
work to do: make a branch now and switch your working copy
to it. (I know, it doesn't seem like much work, but it
is a kludge.) With git, you simply declare the current
working copy to be a new branch. This is perhaps not a good
description of the issue, and undoubtedly will not convince
anyone of anything, but I think it's indicative of why
the subsequent merge is so much cleaner.
I was reluctant to investigate git for reasons which are
unclear to me, and was frankly somewhat offended by Linus'
comments that "subversion is the most pointless open-source
project ever started" along with remarks like "subversion
says it is 'CVS done right'...which says a lot about
why it is lousy [massively paraphrased due to memory loss]".
However, Linus generally knows what he's talking about,
and I respect him enough to give some credence to his
opinions. I still like subversion, but I suspect it is
only because I am required to use it in some situations.
Maybe I'm overstating things, but it's possible that
Linus will end up being remembered for creating git
rather than for creating the Linux kernel. It really is