From: "Shawn O. Pearce" <spearce@spearce.org>
To: Benjamin Collins <aggieben@gmail.com>
Cc: Avery Pennarun <apenwarr@gmail.com>,
Pierre Habouzit <madcoder@debian.org>,
Nigel Magnay <nigel.magnay@gmail.com>,
Git ML <git@vger.kernel.org>
Subject: Re: git submodules
Date: Mon, 28 Jul 2008 23:04:49 -0700 [thread overview]
Message-ID: <20080729060449.GG11947@spearce.org> (raw)
In-Reply-To: <b3889dff0807282251t7096a8c9wf477cf4495749d34@mail.gmail.com>
Benjamin Collins <aggieben@gmail.com> wrote:
> On Mon, Jul 28, 2008 at 4:40 PM, Avery Pennarun <apenwarr@gmail.com> wrote:
> >
> > > One irritating problem with submodules, is
> > > that when someone else commited, and that you git submodule update,
> > > you're on a detached head. Absolutely horrible.
> >
> > I think that roughly everyone agrees with the above statement by now.
> > It would also be trivial to fix it, if only we knew what "fix" means.
> > So far, I haven't seen any good suggestions for what branch name to
> > use automatically in a submodule, and believe me, I've been looking
> > for one :)
>
> I disagree with this completely. I think the detached head is
> actually fantastic [...]
Ditto with Benjamin. Detached head is a fantastic idea.
> [...] because it tells you all the right things:
> a) the branch your submodule is on is ultimately irrelevant
> b) it reminds you that this is not your project. It's part of your
> project managed in a special way by Git, but your project is in ..
> c) if you want to do work in this part of your project that comes from
> somewhere else, you need to be thoughtful about how you manage its
> branches.
>
> I try to keep all my submodules on (no branch) as much as possible.
> In a way, I feel like that kind of relieves me of the chore of keeping
> mapping superproject branches to submodule branches in my head.
At my former day-job we wrote our own "git submodule" in our
build system before gitlink was available in the core, let alone
git-submodule was a Porcelain command.
Many developers who were new to Git found having a sea of 11 Git
repositories+working directories in a single build area difficult to
manage. They quickly found the detached HEAD feature in a submodule
to be a really handy way to know if they made changes there or not.
Most of our developers also modified __git_ps1() in their bash
completion to use `git name-rev HEAD` to try and pick up a remote
branch name when on a detached HEAD. This slowed down their bash
prompts a little bit, but they found that "origin/foo" hint very
valuable to let them know they should start a new branch before
making changes.
So I'm just echoing what Benjamin said above, only we did it
independently, and came to the same conclusion.
--
Shawn.
next prev parent reply other threads:[~2008-07-29 6:05 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-28 16:20 git submodules Pierre Habouzit
2008-07-28 16:23 ` Pierre Habouzit
2008-07-28 20:23 ` Nigel Magnay
2008-07-28 20:55 ` Pierre Habouzit
2008-07-28 20:59 ` Pierre Habouzit
2008-07-28 21:40 ` Avery Pennarun
2008-07-28 22:03 ` Pierre Habouzit
2008-07-28 22:26 ` Jakub Narebski
2008-07-28 22:41 ` Junio C Hamano
2008-08-17 20:13 ` Pierre Habouzit
2008-08-17 22:54 ` Avery Pennarun
2008-08-17 23:08 ` Junio C Hamano
2008-08-18 0:46 ` Pierre Habouzit
2008-07-28 22:32 ` Avery Pennarun
2008-07-28 23:12 ` Pierre Habouzit
2008-07-29 5:51 ` Benjamin Collins
2008-07-29 6:04 ` Shawn O. Pearce [this message]
2008-07-29 8:18 ` Nigel Magnay
2008-07-29 8:45 ` Pierre Habouzit
2008-07-29 8:21 ` Pierre Habouzit
2008-07-29 8:37 ` Pierre Habouzit
2008-07-29 8:51 ` Petr Baudis
2008-07-29 12:15 ` Johannes Schindelin
2008-07-29 13:07 ` Pierre Habouzit
2008-07-29 13:15 ` Johannes Schindelin
2008-07-29 13:19 ` Pierre Habouzit
2008-07-29 13:31 ` Nigel Magnay
2008-07-29 14:49 ` Pierre Habouzit
2008-07-29 14:53 ` Junio C Hamano
-- strict thread matches above, loose matches on Subject: below --
2009-10-17 17:15 Steven Noonan
2009-10-17 17:27 ` Jakub Narebski
2009-10-17 22:30 ` Nanako Shiraishi
2009-10-21 19:38 ` Avery Pennarun
2008-04-28 19:50 Victor Bogado da Silva Lins
2008-04-28 21:01 ` Miklos Vajna
2008-02-05 15:02 HG branches Takashi Iwai
2008-02-06 14:04 ` Jaroslav Kysela
2008-02-06 14:06 ` Jaroslav Kysela
2008-02-06 20:06 ` Rene Herman
2008-02-07 11:37 ` Takashi Iwai
2008-02-07 21:10 ` GIT submodules Rene Herman
2008-02-07 21:24 ` Rene Herman
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=20080729060449.GG11947@spearce.org \
--to=spearce@spearce.org \
--cc=aggieben@gmail.com \
--cc=apenwarr@gmail.com \
--cc=git@vger.kernel.org \
--cc=madcoder@debian.org \
--cc=nigel.magnay@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.