From: Alex Riesen <raa.lkml@gmail.com>
To: skimo@liacs.nl
Cc: Junio C Hamano <junkio@cox.net>, git@vger.kernel.org
Subject: Re: [RFC] Third round of support for cloning submodules
Date: Sun, 20 May 2007 22:54:44 +0200 [thread overview]
Message-ID: <20070520205444.GC25462@steel.home> (raw)
In-Reply-To: <20070520195930.GX942MdfPADPa@greensroom.kotnet.org>
Sven Verdoolaege, Sun, May 20, 2007 21:59:30 +0200:
> > I am very worried about this big red switch that says "all
> > subprojects to be cloned and checked out, or nothing". I think
> > this would not work well with projects that truly need
> > superproject support (i.e. very large ones, where most people
> > would not want to clone and check out every single subproject).
>
> It's pretty easy to add a "submodule.*.skip" or "submodule.*.ignore".
> Since the subcloning only happens at checkout, you could set these
> before doing a checkout.
And set them back after doing the checkout? And so for each and every
checkout operation? I suggest you try checkout something like KDE a
few times (well, assuming KDE is split in submodules. It isn't yet).
The point is - it is annoying. And if it is annoying, it wont be used
(as branches in CVS and merging in SVN).
> > The more important issue I think is at what point in the
> > superproject operation does a recursive checkout in a subproject
> > should happen, and how we should do the checkout. Issues I can
> > think of offhand are (no way exhaustive):
> >
> > - Do we checkout a branch? if so which one?
> >
> > - Do we detach HEAD if the commit named by the superproject
> > tree is not at the tip of the current branch of subproject?
> > do we detach always even if the commit is at the tip?
>
> I thought there was a consensus to detach the HEAD.
> I don't have a strong opinion on this issue, but a detached
> HEAD seems the most appropriate to me.
Me too. I actually believe it is the only way to do it. How can you
checkout a subproject to something else (to what a branch may point)
and to what the tree of superproject has? On the other side (in
subproject) - why are you, the superproject, allowed to screw the
references of the subproject?! It is independent, isn't it?!
> > - What would we do when the subproject working tree is not
> > clean?
>
> I was planning on adding a --dry-run to git-checkout.
> The superproject would run this in each subproject before
> doing the actual checkout of the superproject.
Why not do exactly what we do now? Pass "-m" down to it, if it was
given to the top-level git-checkout.
next prev parent reply other threads:[~2007-05-20 20:54 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-20 18:04 [RFC] Third round of support for cloning submodules skimo
2007-05-20 18:04 ` [PATCH 01/15] Add dump-config skimo
2007-05-20 18:04 ` [PATCH 02/15] git-config: add --remote option for reading config from remote repo skimo
2007-05-20 18:11 ` Frank Lichtenheld
2007-05-20 19:44 ` Sven Verdoolaege
2007-05-20 22:03 ` Frank Lichtenheld
2007-05-20 18:04 ` [PATCH 03/15] http.h: make fill_active_slots a function pointer skimo
2007-05-20 18:04 ` [PATCH 04/15] git-config: read remote config files over HTTP skimo
2007-05-20 18:04 ` [PATCH 05/15] unpack-trees.c: pass cache_entry * to verify_absent rather than just the name skimo
2007-05-20 18:04 ` [PATCH 06/15] git-read-tree: take --submodules option skimo
2007-05-20 21:24 ` Martin Waitz
2007-05-20 21:50 ` Sven Verdoolaege
2007-05-20 18:04 ` [PATCH 07/15] unpack-trees.c: assume submodules are clean skimo
2007-05-20 18:04 ` [PATCH 08/15] Add run_command_v_opt_cd: chdir into a directory before exec skimo
2007-05-20 18:04 ` [PATCH 09/15] entry.c: optionally checkout submodules skimo
2007-05-20 21:18 ` Martin Waitz
2007-05-20 21:51 ` Sven Verdoolaege
2007-05-24 13:29 ` Sven Verdoolaege
2007-05-20 18:04 ` [PATCH 10/15] git-checkout: pass --submodules option to git-read-tree skimo
2007-05-20 18:04 ` [PATCH 11/15] git-read-tree: treat null commit as empty tree skimo
2007-05-20 18:04 ` [PATCH 12/15] git_config: add void * for callback data skimo
2007-05-20 18:04 ` [PATCH 13/15] unpack-trees.c: optionally clone submodules for later checkout skimo
2007-05-20 18:04 ` [PATCH 14/15] entry.c: optionall checkout newly cloned submodules skimo
2007-05-20 18:04 ` [PATCH 15/15] git-clone: add --submodules for cloning submodules skimo
2007-05-20 19:10 ` [RFC] Third round of support " Junio C Hamano
2007-05-20 19:59 ` Sven Verdoolaege
2007-05-20 20:54 ` Alex Riesen [this message]
2007-05-20 21:09 ` Sven Verdoolaege
2007-05-20 21:24 ` Alex Riesen
2007-05-20 21:47 ` Sven Verdoolaege
2007-05-20 22:26 ` Alex Riesen
2007-05-21 9:57 ` Sven Verdoolaege
2007-05-21 10:44 ` Josef Weidendorfer
2007-05-21 11:41 ` Martin Waitz
2007-05-20 21:40 ` Martin Waitz
2007-05-20 22:24 ` Alex Riesen
2007-05-20 22:55 ` Martin Waitz
2007-05-20 23:02 ` Alex Riesen
2007-05-20 23:12 ` Martin Waitz
2007-05-22 21:54 ` Alex Riesen
2007-05-24 15:56 ` Martin Waitz
2007-05-21 0:39 ` Steven Grimm
2007-05-21 10:01 ` Sven Verdoolaege
2007-05-22 21:56 ` Alex Riesen
2007-05-20 22:14 ` Martin Waitz
2007-05-20 22:58 ` Alex Riesen
2007-05-20 23:36 ` Martin Waitz
2007-05-20 22:52 ` Martin Waitz
2007-05-21 8:54 ` Sven Verdoolaege
2007-05-21 10:07 ` Martin Waitz
2007-05-21 10:14 ` Sven Verdoolaege
2007-05-21 11:34 ` Martin Waitz
2007-05-21 12:19 ` Sven Verdoolaege
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070520205444.GC25462@steel.home \
--to=raa.lkml@gmail.com \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
--cc=skimo@liacs.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).