Why not give git a try? (was "Re: [head tinderbox] failure on amd64/amd64")

Alexander Best arundel at freebsd.org
Tue Jan 25 14:05:17 UTC 2011


On Tue Jan 25 11, Giorgos Keramidas wrote:
> On Tue, 25 Jan 2011 02:22:34 -0800, perryh at pluto.rain.com wrote:
> >Diane Bruce <db at db.net> wrote:
> >> There certainly would not be a chance of putting mercurial or git
> >> into base for example.
> >
> > Completely apart from licensing, another strike against mercurial is
> > that it is written in Python, so it couldn't go into base unless
> > Python also went into base.
> 
> This argument is actually a bit weak for most of the VCS'es out there
> (including svn by the way).
> 
> We don't really *need* to import the full VCS itself into FreeBSD.  For
> instance, Subversion is also not part of the base system.  It works fine
> as a port that people can install.
> 
> There's really _nothing_ wrong with a VCS that is a port/package.  We
> used to have CVS into the base system as "the official VCS", but this is
> no longer the case for the subversion repo of src/.  IMO this hasn't
> really caused any major problem with the people who want to check out
> and patch the source tree.

imo having a VCS in base is a bad idea. it makes it much harder to keep it in
sync with the vendor version. to update a port involves very little
administrative work. on the other hand updating vendor software in base
involves quite a lot of importing etc.

also please don't forget that having a VCS in base means there's only *one*
version of the VCS available. having it in the ports tree makes it possible to
have a legacy release, a stable release, an experimental release and also a
development snapshot. of course there could be a stable release in base and if
users want to they can install a more recent version from ports, but that
doesn't really make sense imo.

also a VCS is not really an essential part of an OS. with clang/llvm e.g. a
version must exist in base, since it's not possible to invoke /usr/local in
order to build the system. the VCS however is not part of the build toolchain
however (except 'make update' maybe).

so -1 for moving a new VCS to base.

also i think freebsd should stick to a major VCS, like git and not some lesser
known obscure VCS. with git you have all the linux people behind it, which
means it will be updated regularly, bugs will be fixed quite fast etc. there's
no point in switching to some rather unknown VCS where the developers decide
after 2 years that they don't have any more spare time and have to abandon the
project.

to be quite honest: the freebsd community doesn't have the manpower to maintain
a VCS by itself. you *need* other developers in order to keep it up to date.
just look at GNATS e.g. gnu abandoned it quite a while ago and the bugbusting
community is just to small to either update to a more recent version of GNATS
or switch to something like bugzilla.

again: you *need* support from other developers in order to maintain a VCS
properly. so git is the best choice imo.

just my 0.02$

cheers.
alex

> 

-- 
a13x


More information about the freebsd-hackers mailing list