All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Niebler <eric@boostpro.com>
To: Avery Pennarun <apenwarr@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: help moving boost.org to git
Date: Tue, 06 Jul 2010 14:29:33 -0400	[thread overview]
Message-ID: <4C33760D.9000404@boostpro.com> (raw)
In-Reply-To: <AANLkTikfTFw_UdV1ia58MbWxH4h8TJAr-Y5WPvlXCjeJ@mail.gmail.com>

On 7/6/2010 2:13 PM, Avery Pennarun wrote:
<snip>
> Specifically, with a tool like git-subtree, it only really works if a
> particular subproject has always existed in the same subdir of your
> repo since it started.  If the subdir was ever renamed, or if some of
> the files were previously part of one subdir but then moved around,
> git-subtree doesn't (currently) know how to deal with that.

Bah! Yes, directories have moved around in our svn repro. :-( In
particular, we've had cases where libraries in boost began life as
sub-projects of a different library and then got spun off.

> git-filter-branch can do anything you want, but you have to teach it
> how, which is obviously even *more* error prone.

I can only imagine.

> Things are also a little messy if you have some kind of top-level
> directory with build infrastructure shared by all the subdirs.  Does
> the top-level Makefile have a list of the subdirs it needs to build?

Bah! Yes, the build, the docs and the test infrastructure all currently
share files across our submodules-to-be. Surely other projects have
encountered this problem before, right? (KDE, I'm looking in your
direction.)

> If so, there's no way to extract only a subset of true history that
> will still build correctly - it'll be looking for directories that you
> explicitly removed.  You could update the Makefiles programmatically
> in every single revision, but that's starting to get extremely
> messy... and your history stops representing what *real life* really
> looked like at the time.

I see what you mean.

> If your subdirs haven't been moving around (which sounds like that
> might be the case for you), and you don't have any top-level files
> that you care about, rewriting might turn out to be straightforward.
> You could also make the decision on a subdir-by-subdir basis, I guess.

More evidence that the fancy filter/branch/subtree/svn2git/whatever
utilities aren't going to get us where we'd like to be. A simple
conversion and grafts look like the only workable approach.

> Have fun,

Having heaps! Thanks,

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com

  reply	other threads:[~2010-07-06 18:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-05 14:16 help moving boost.org to git Eric Niebler
2010-07-05 14:48 ` Erik Faye-Lund
2010-07-05 14:48 ` Johannes Sixt
2010-07-05 17:51   ` Eric Niebler
2010-07-05 18:43     ` Sverre Rabbelier
2010-07-06 15:06   ` Raja R Harinath
2010-07-05 22:04 ` Finn Arne Gangstad
2010-07-05 23:11   ` Eric Niebler
2010-07-05 23:32     ` Avery Pennarun
2010-07-06  0:16       ` Eric Niebler
2010-07-06 17:27         ` Avery Pennarun
2010-07-06 18:00           ` Eric Niebler
2010-07-06 18:13             ` Avery Pennarun
2010-07-06 18:29               ` Eric Niebler [this message]
2010-07-06  1:46     ` Dave Abrahams
2010-07-06  8:51       ` Jakub Narebski
2010-07-06 10:34         ` David Abrahams
2010-07-06  0:16 ` Greg Troxel
2010-07-06  0:25   ` Eric Niebler

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=4C33760D.9000404@boostpro.com \
    --to=eric@boostpro.com \
    --cc=apenwarr@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 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.