Distributed Version Control for ports(7) ( was: Re: autoconf
snabb at epipe.com
Mon Sep 20 13:48:29 UTC 2010
On Mon, 20 Sep 2010, perryh at pluto.rain.com wrote:
> One issue with either Git or Mercurial is that they are GPL.
> AFAIK FreeBSD prefers to avoid GPL in the base or in critical
> widely-used infrastructure if a viable non-GPL alternative
The project currently uses Perforce for many sub-projects, so using
GPL licenced solution could hardly be a problem. I was shocked to
notice that I need a proprietary binary-only software which does
whatever unbeknownst to me to be able to access the TrustedBSD
Using some free modern VCS for new sub-projects which would
traditionally go to perforce would be a good way and first-use
candidate to start experimenting with and getting developers used
to the slightly different new way of doing things.
>From my point of view as a *user* it would be very nice to have
some modern VCS interface to ports and src. The current system (SVN
& CVS) makes it troublesome for users to keep in sync with the
central repository while maintaining their local modifications.
Also, if I want to be able to access port version history easily,
I need to use anoncvs to update my ports tree, but that is terribly
slow (or I could mirror the whole CVS repository to my disk, but
that is quite a bloat). Luckily src has been migrated to SVN, which
makes my life slightly easier.
The above is just a point of view as a pure consumer of the source
tree. My contributions to the project come as patches in PRs (it
would be easier to work on those patches with a modern VCS). My
personal favourite is Bazaar as it tracks not only files but also
directories properly, which I need for some projects, Mercurial
comes 2nd and Git 3rd as it is quite a mess. All of them are tolerable :).
I do know that the migration is a big burden which makes the whole
thing very difficult to accomplish.
Janne Snabb / EPIPE Communications
snabb at epipe.com - http://epipe.com/
More information about the freebsd-ports