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

Re: [proposal] switch our repository from Subversion to Git



On Sun, Mar 09, 2008 at 12:49:23PM +0100, Stefano Zacchiroli wrote:
> Yes, but as I've mentioned before, there is a git-specific way of doing
> this, without the need of a hand-made script.

I was referring to git submodules [1]. However, after a bit of
investigation [2] it seems they are not a handy way of handling multiple
package repository on git.d.o. I've also asked the X.org guys on how
they handle their repositories and it turned out that:

- you just ask for a group-writable directory on alioth (our will be
  /git/pkg-ocaml-maint

- you don't use it as a git repository, but rather put there a tree with
  several git repositories, ours can be something like:

    /git/pkg-ocaml-maint/packages/  # <-- not a git repository
    /git/pkg-ocaml-maint/packages/bibtex2html.git/
    /git/pkg-ocaml-maint/packages/cairo-ocaml.git/
    /git/pkg-ocaml-maint/packages/calendar.git/
    ...
    /git/pkg-ocaml-maint/projects/  # <-- not a git repository
    /git/pkg-ocaml-maint/projects/approx.git/
    /git/pkg-ocaml-maint/projects/debmirror.git/
    ...
    ... and so on ...

- to create a new git repository for a new package you do something
  like:

    $ ssh alioth.debian.org GIT_DIR=/git/foo/bar.git git --bare init --shared=world

- to manage with just one command the update of several cloned git
  repositories the best practice is to use mr [3]. (BTW I think it would
  be a wonderful idea to rewrite Sylvain's script about /layout/ to use
  mr, as mr is $VCS-agnostic; but of course it is pointless now if we
  are going to move to git as it seems)

- it only remains open the point about how to checkout at once all
  package repositories (which probably only myself is interested in
  doing, but anyhoe :-)) The solution is mr + ssh alioth.d.o printing
  out all the relevant directories

Yes, it is a bit more cumbersome than the current situation, but nothing
spectacularly hard with a couple of scripts well-documented on our web
page. Also it is working perfectly fine for other I don't see why it
shouldn't for us.

Cheers.

[1] http://www.kernel.org/pub/software/scm/git/docs/v1.5.4.3/user-manual.html#submodules
[2] http://lists.alioth.debian.org/pipermail/vcs-pkg-discuss/2008-March/000174.html
[3] http://packages.debian.org/sid/mr

-- 
Stefano Zacchiroli -*- PhD in Computer Science ............... now what?
zack@{upsilon.cc,cs.unibo.it,debian.org}  -<%>-  http://upsilon.cc/zack/
(15:56:48)  Zack: e la demo dema ?    /\    All one has to do is hit the
(15:57:15)  Bac: no, la demo scema    \/    right keys at the right time

Attachment: signature.asc
Description: Digital signature


Reply to: