From: Jens Lehmann <Jens.Lehmann@web.de>
To: Michael Treibton <mtreibton@googlemail.com>
Cc: git@vger.kernel.org
Subject: Re: Submodules or separate repos?
Date: Mon, 25 Apr 2011 21:57:57 +0200 [thread overview]
Message-ID: <4DB5D245.6030800@web.de> (raw)
In-Reply-To: <BANLkTinAC2Thuf_z_-DMEHotgF-tqpQYZw@mail.gmail.com>
Am 25.04.2011 12:35, schrieb Michael Treibton:
> ive recently converted a project that was in svn to use git - and
> that's gone well.
>
> in doing this ive been wondering if i can't split up the respository
> more. currently we have this:
>
> project/
> core/
> modules/
> moduleA/
> moduleB/
>
> Which i think is fairly typical of most projects.
>
> i was wondering how feasible it would be to split out "moduleA" and
> "moduleB" into their own repositories? to me that makes sense.
In my experience that only makes sense when one of the following
conditions is met for "moduleA" and "moduleB":
* they are developed by someone else
* they contain code shared between superprojects
* they consist of huge and/or many files that would hurt performance
of everyday git commands.
(See https://git.wiki.kernel.org/index.php/SubprojectSupport for a
more complete discussion of submodules and other subproject
techniques)
I can't see that splitting up the repository just because you can is
buying anything - except extra overhead for everyday development. So
I think you have to have a good reason to do that (but you didn't
mention any ;).
> but by
> themselves neither "moduleA" or "moduleB" would compile without the
> core.
That rather looks like an argument against splitting them off. Even
though we have submodules depending on the presence of other
submodules at my dayjob, they almost never depend on anything in
the superproject (the only exception being a file containing a
project version which is then to be used for all build artifacts,
but that is a convention used in all our superprojects).
> And if they were separate repositories, how would this work from a
> development point of view? what about a release of the project? would
> there be a makefile which pulled in a known version of tarball
> released from each moduleX repository?
That depends on the technique you choose. But I really can't answer
that question until you share your motivation for having separate
repositories in the first place.
prev parent reply other threads:[~2011-04-25 19:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-25 10:35 Submodules or separate repos? Michael Treibton
2011-04-25 19:57 ` Jens Lehmann [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=4DB5D245.6030800@web.de \
--to=jens.lehmann@web.de \
--cc=git@vger.kernel.org \
--cc=mtreibton@googlemail.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 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).