[llvm-dev] [RFC] One or many git repositories?

Robinson, Paul via llvm-dev llvm-dev at lists.llvm.org
Sun Jul 31 13:52:04 PDT 2016

> -----Original Message-----
> From: mehdi.amini at apple.com [mailto:mehdi.amini at apple.com]
> Sent: Sunday, July 31, 2016 11:03 AM
> To: Robinson, Paul
> Cc: Chris Bieneman; Justin Lebar; llvm-dev at lists.llvm.org; Bruce Hoult
> Subject: Re: [llvm-dev] [RFC] One or many git repositories?
> > On Jul 30, 2016, at 10:38 PM, Robinson, Paul via llvm-dev <llvm-
> dev at lists.llvm.org> wrote:
> >
> >> The only thing a monorepo gets you that strictly isn’t possible without
> >> it is the ability to commit to multiple projects in a single commit.
> >> Personally I don’t think that is a big enough justification, but that
> is
> >> my opinion, not a fact.
> >
> > Okay, I just bumped into r277008, in which commits to llvm, clang, and
> > clang-tools-extra all have the same SVN revision number.
> > I don't know how it happened but it did.  Is this just an artifact of
> > how somebody pasted together a bunch of git-svn projects, or is it
> > something that a top-level git repo with submodules would allow?
> > And if it is, then the "only thing a monorepo gets you" isn't something
> > that you need a monorepo to get.
> Nobody claimed that you need a monorepo to be able to get this on the

Actually it looks to me like beanz said exactly that.

> absolute. Technically with a read-write umbrella repo, one could perform
> this kind of commit with the submodules proposal.
> The difference I see is that we trade (optional) complexity at checkout
> out time vs (not-so optional) complexity during development (day-to-day)
> time.
> In terms of manipulating the repo to achieve something, you can use all
> the “simple” git commands to handle the monorepo (`git branch` works
> uniformly for example).

Right, I get that part, the question was whether the claim about "strictly
isn't possible" was actually correct.  You're saying the claim isn't
correct but we don't want to operate a multi-repo that way, which is fine.

>> Mehdi

More information about the llvm-dev mailing list