From: "Shawn O. Pearce" <spearce@spearce.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "J. Bruce Fields" <bfields@fieldses.org>,
Michael Hendricks <michael@ndrix.org>,
git@vger.kernel.org
Subject: Re: removing content from git history
Date: Wed, 21 Feb 2007 16:21:30 -0500 [thread overview]
Message-ID: <20070221212129.GD26525@spearce.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0702211306520.4043@woody.linux-foundation.org>
Linus Torvalds <torvalds@linux-foundation.org> wrote:
> The probnlem there is that most conversion scripts that use
> "write_sha1_file()" will want to *read* that file later. If
> git-fast-import hasn't generated the pack yet (because it's still waiting
> for more data), that will not work at all.
Yes, indeed...
> So then you basically force the conversion script to keep remembering all
> the old object data (using something like pretend_sha1_file), or you limit
> it to things that just always re-write the whole object and never need any
> old object references that they might have written.
>
> A lot of conversions tend to be incremental, ie they will depend on the
> data they converted previously.
Which is why I was actually thinking of flipping this on its head.
Libify git-apply and embed that into fast-import, then one of the
native input formats might just be an mbox, or something close enough
that a simple C/perl/sed prefilter could make an mbox into the input.
fast-import can (and does if necessary) go back to access the
packfile it is writing. It has the index data held in memory and
uses only OBJ_OFS_REF so that sha1_file.c can unpack deltas just
fine, even though we lack an index file and have not completely
checksummed the pack itself.
So although no other Git process can use the packfile, it is usuable
from within fast-import...
--
Shawn.
next prev parent reply other threads:[~2007-02-21 21:25 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-21 16:45 removing content from git history Michael Hendricks
2007-02-21 16:56 ` Shawn O. Pearce
2007-02-21 17:17 ` J. Bruce Fields
2007-02-21 18:02 ` Linus Torvalds
2007-02-21 18:24 ` Linus Torvalds
2007-02-21 21:00 ` Shawn O. Pearce
2007-02-21 21:11 ` Linus Torvalds
2007-02-21 21:21 ` Shawn O. Pearce [this message]
2007-10-09 20:58 ` Bill Lear
2007-10-09 21:02 ` J. Bruce Fields
2007-10-09 22:25 ` Bill Lear
2007-10-10 14:41 ` Johannes Schindelin
2007-02-21 17:14 ` Linus Torvalds
2007-02-21 18:02 ` Nicolas Pitre
2007-02-21 18:13 ` Linus Torvalds
2007-02-21 18:39 ` Nicolas Pitre
2007-02-21 18:30 ` Michael Hendricks
2007-02-21 18:37 ` Shawn O. Pearce
2007-02-21 18:47 ` Linus Torvalds
2007-02-21 18:56 ` Linus Torvalds
2007-02-21 18:52 ` Nicolas Pitre
2007-02-21 19:01 ` Junio C Hamano
2007-02-21 19:33 ` Nicolas Pitre
2007-02-21 20:22 ` Junio C Hamano
2007-02-21 20:49 ` Nicolas Pitre
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=20070221212129.GD26525@spearce.org \
--to=spearce@spearce.org \
--cc=bfields@fieldses.org \
--cc=git@vger.kernel.org \
--cc=michael@ndrix.org \
--cc=torvalds@linux-foundation.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).