git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Clemens Buchacher <drizzd@aon.at>
To: Adrian May <adrian.alexander.may@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: Android needs repo, Chrome needs gclient. Neither work. What does that say about git?
Date: Fri, 20 Nov 2009 16:58:47 +0100	[thread overview]
Message-ID: <20091120155847.GA1359@localhost> (raw)
In-Reply-To: <65e170e70911200251q2ec5ec87rc37577dddfd3317d@mail.gmail.com>

On Fri, Nov 20, 2009 at 06:51:32PM +0800, Adrian May wrote:
> Git is just plain wrong, because you can't split or merge repositories
> or pull subtrees of them.

I think you made an unfortunate choice of words here, because as others have
mentioned, splitting and merging subtrees is implemented already. Maybe you
were talking about checking out or cloning subtrees. To date, none of the
distributed version control systems are capable of doing that. And that is
one of the reasons why we have wrapper scripts like repo (although IIRC repo
does a lot more than just that).

AFAICS, there is no fundamental reason why this should be difficult to
support. Clearly, there are some odd situations to deal with. For example,
how to deal with merge conflicts that happen outside of the subtree that's
currently available? How to detect (modified) moves of files into the
available subtree?

But we could simply fail in these cases. The workarounds currently in use
are not able to do this either.

> It doesn't have the kind of triggers you need to assert change control
> either, and these bolt-on scripts are just making life messy.

I don't understand what you mean here.

> Will somebody please finish git itself instead of working around it, or
> use a source control system that's up to the job.

There is a desire to do this in the git community, as documented in [1].
However, it appears to be hard enough to do so that people had rather
implement custom solutions such as git-submodules, which are probably just
good enough for them.

Clemens

[1] http://git.or.cz/gitwiki/SoC2009Ideas#NarrowandSparseclonesupport

      parent reply	other threads:[~2009-11-20 15:59 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <2d707e8c-2561-470c-beba-c81e16ac441c@k17g2000yqh.googlegroups.com>
2009-11-20 10:51 ` Android needs repo, Chrome needs gclient. Neither work. What does that say about git? Adrian May
2009-11-20 11:31   ` Johannes Schindelin
2009-11-23  4:11     ` Adrian May
2009-11-23 13:58       ` tytso
2009-11-24  3:48         ` Adrian May
2009-11-24 11:29           ` Bob Hazard
2009-11-24 20:45           ` Daniel Barkalow
2009-11-20 11:50   ` Petr Baudis
2009-11-20 12:46   ` Jakub Narebski
2009-11-20 15:58   ` Clemens Buchacher [this message]

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=20091120155847.GA1359@localhost \
    --to=drizzd@aon.at \
    --cc=adrian.alexander.may@gmail.com \
    --cc=git@vger.kernel.org \
    /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).