autoconf-archive-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Small repository problems


From: Peter Simons
Subject: Re: Small repository problems
Date: Thu, 23 Jul 2009 05:53:28 +0200

Hi Francesco,

 > I'm not acquainted with submodules. I'm just filing all my PROs and
 > CONs before asking for a small rearrangement. At the moment I see
 > only CONs:
 >
 > 1) We need 2 tags for each distribution
 > 2) We need to fetch the gnulib repository
 > 3) The small problems I mentioned earlier
 >
 > I don't see PROs at the moment but I should admit my ignorance on the
 > subject.

git tracks the state of each checked-out submodule in the 'maint'
branch. This means that every version of 'maint' is associated with a
unique version of 'master'. For example:

 | $ git log -p -1 m4
 | commit d7160b614a9e1fc890a151f18d245a3fb867a4a1
 | Author: Peter Simons <address@hidden>
 | Date:   Wed Jul 22 16:38:01 2009 +0200
 |
 |     m4: update reference to macro branch
 |
 | diff --git a/m4 b/m4
 | index afa7b94..15c3cc5 160000
 | --- a/m4
 | +++ b/m4
 | @@ -1 +1 @@
 | -Subproject commit afa7b94532c11d0bb17924b564dd3d9c82270404
 | +Subproject commit 15c3cc5e5fdd75385ec266a935dc25519754596b

Because of this setup, we don't need two tags to identify a release.
Tagging 'maint' suffices, because a tag in 'maint' implicitly tags all
of 'master', too.

I'm not sure what you mean by (2). The Autoconf Archive build system
depends on gnulib, so the library has to be made available in one way or
another. This is not a consequence of the submodule setup. The necessity
to check-out gnulib is orthogonal to this whole question; i.e. it's
neither an argument for nor against using submodules.

The initial problems you've encountered are unpleasant, of course. I
trust that these have been solved by now?

One advantage of keeping 'master' and 'maint' separate is that there is
a clear distinction between actual macro contents and files that exist
only as part of the release infrastructure. The vast majority of users
will never care about 'maint' or about any of the files it contains.
Most people care only for the macros. The current repository setup makes
life very easy for the users in that regard. The pages

  http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=shortlog
  http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=atom

..., for instance, show only changes to the *macros*. The log isn't
cluttered up with lots of commits that modify python code, configure
scripts, or automake files. If we were to merge 'maint' and 'master',
this distinction would be lost.

Take care,
Peter




reply via email to

[Prev in Thread] Current Thread [Next in Thread]