[10] in athena10

home help back first fref pref prev next nref lref last post

Re: Version control for Athena 10

daemon@ATHENA.MIT.EDU (Tim Abbott)
Fri Dec 7 16:15:32 2007

Date: Fri, 7 Dec 2007 16:15:20 -0500 (EST)
From: Tim Abbott <tabbott@MIT.EDU>
To: Greg Hudson <ghudson@mit.edu>
cc: athena10@mit.edu
In-Reply-To: <200712051647.lB5GlurS000780@equal-rites.mit.edu>
Message-ID: <Pine.LNX.4.64L.0712071607430.25874@vinegar-pot.mit.edu>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed

I don't have a strong opinion on this matter, but I could see the DVCS 
option being really nice for people working on building Athena packages 
for Macs or other Unix platforms.  Since I've heard grumblings about 
people doing such a project around SIPB repeatedly over the last few 
years, and there are a large number of people using Mac laptops around 
campus, it seems that this might present a near-term advantage.

 	-Tim Abbott

On Wed, 5 Dec 2007, Greg Hudson wrote:

> I talked with Steve and Catherine about the collaboration and they
> haven't raised any red flags.  They are also amenable to us using git
> or another DVCS instead of svn if there's a good reason for it.  So
> let's discuss this issue in more depth.
>
> Anders wrote:
>> If you have something like Git, you can keep the upstream sources
>> and packaged sources in two separate branches (or even
>> repositories), and freely merge patches between them.
>
> My reservation is that even with good merging support in the VCS tool
> we use, this feels like an unnecessary extra step when doing
> day-to-day work on the Athena sources.  Every time we make a change to
> the platform-independent Athena sources and want to push it out, the
> developer would have to do two steps in two different checkouts: first
> make the change to the platform-independent source, then merge the new
> code into the Debian package source and create a changelog entry.
>
> I also don't think adding a debian directory really damages the
> platform-neutral nature of the sources.  If you're not creating a
> debian package from the source, you just ignore the directory and
> build in a different way.
>
> For the hard cases like bash where we have to modify the upstream
> source packages, no version control tool is going to do the job since
> there are multiple upstreams and multiple products.  The Debathena
> solution of writing a custom script per package is fine, but it's not
> going to matter which tool we use to store the script and patch.
>
>> A distributed VCS, of course, also has the advantage that people not
>> involved in the project can utilize the VCS in the same first-class
>> way that project members do.
>
> Agreed, and this is a motivator for adopting a DVCS in general.
>
> I could see using git as a sort of pilot or technology leader thing.
> The usual counterweight to using a DVCS is that SVN has better Windows
> support and IDE integration, neither of which applies to Athena.  My
> concerns are:
>
>  1. This could become an albatross if nothing else in IS&T ever uses
>     git.
>
>  2. This could set back the project since it requires learning and
>     adapting to a new tool.
>
> Currently, I would prefer to use svn and treat our packages as Debian
> native.
>
>> https://wiki.ubuntu.com/NoMoreSourcePackages
>> https://wiki.ubuntu.com/NoMoreSourcePackages/GitImpl
>
> This is cool reading, but is mostly trying to solve two problems we
> don't have:
>
>  1. (Base document) People uploading source packages without
>     committing their changes to version control.  They propose
>     forbidding source package uploads, instead forcing source updates
>     to be done through a back-end mechanism which checks out from
>     version control.
>
>  2. (Git implementation) Keeping Debian and Ubuntu packages in sync
>     even though they use disjoint debian control information.  They
>     do this by keeping the patched package source in one repository
>     and the debian directory in another.  The package source can then
>     be freely merged between the Ubuntu and Debian maintainers, while
>     the debian control information is kept separate.
>

home help back first fref pref prev next nref lref last post