Re: git fast-export | git fast-import doesn't work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Wed, 26 Nov 2008, Michael J Gruber wrote:

> Looking at the source I suspect that fast-export fails to denote 
> parenthood in the case of yet unmarked parents (last for-loop of 
> handle_commit() in builtin_fast_export.c). But I don't really know that 
> code at all.

I strongly doubt so.  Noticed the use of has_unshown_parent(commit) in 
both cases before calling handle_commit()?

In any case, here is a script that I wrote _long_ time ago, to be able to 
reconstruct history from the output of "git rev-list --all --parents".  
Maybe this helps you in reconstructing something that is handled 
incorrectly by fast-export | fast-import, but is lighter than a full-blown 
repository.

-- snip --
#!/bin/sh

# Given the output of git-rev-list, this reconstructs the DAG of the 
history

i=0
tac | while read rev parents; do
        let i=$i+1
        echo $i > a1
        git add a1
        tree=$(git write-tree)
        parents="$(for parent in $parents
                do
                        echo -n "-p $(git rev-parse sp-$parent) "
                done)"
        commit=$(echo "$rev $i" | git commit-tree $tree $parents)
        git tag sp-$rev $commit
done
-- snap --

Ciao,
Dscho

--

          |

Ceci n'est pas une pipe
--
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

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux