On Mon, 16 Jul 2007, Shawn O. Pearce wrote:
Julian Phillips <julian@xxxxxxxxxxxxxxxxx> wrote:
However, how do you copy a file from a
particular revision?
and sometimes not so much. You can't do that right now. I've wanted
to open up the data subcommand to allow another form that lets you
specify data from a branch and file path (thus selecting a blob
from another revision) but I haven't gotten around to it. I also
don't have time to do it during the earlier part of this week.
Maybe I'll get to it later near the end of the week.
I was wondering if this was still a vague todo item, or if it was being
worked on? It really is the biggest thing blocking my import at the
moment and I'm willing to have a bash at it myself, but I didn't want to
start messing around inside the fast-import code if someone else was
already there ...
It shouldn't be too difficult now with the tree_content_get()
function that I recently defined for the C/R commands. The SHA-1
comes back in the tree_entry leaf, but that codepath is only valid
for the tip of a branch that fast-import knows about in memory.
If it doesn't then you probably need to fallback into raw tree
parsing. Ugh.
The way prior frontends have handled this is they assigned marks
to every blob, and then had a translation table within the frontend
of revision->mark, so that anytime it needed a given revision of a
file it knew what mark to send to fast-import. This does require
that the frontend maintain basically everything...
Not sure how that would apply to trees ... and I would rather minimise the
amount of state retained in the frontend.
--
Julian
---
Disco is to music what Etch-A-Sketch is to art.
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html