git fast-import : How to change parent during import?
- From
Vitor Antunes <vitor.hda@gmail.com>
- Date
- Mar 8, 2011, 01:21 UTC
- Message-ID
- <AANLkTikiEfUSdNqqTjuYy_JLJnEyCizmusSucYsEHC2r@mail.gmail.com>
Hi everyone,
Is it possible to change the parent of a commit during fast import? I've tried using "reset" command and making a new commit pointing to a new parent, but in both cases I get a "new tip ... does not contain ..." error message.
Providing a bit of context. I'm trying to improve git-p4 to detect the parent commit of a new branch. Unfortunately, in Perforce a branch is nothing more than a copy of a bunch of files into a new location. Because the origin of the copy can be any past commit and there is no information about which commit was used it is very difficult to identify a parent of a new branch. But if we assume that in this copy process no file is modified then it should be possible to identify the parent commit simply by comparing their SHA-1. To achieve this I used the checkpoint command to flush the list of imported commits to disk and then used standard rev-list and diff-tree commands to make find the parent commit. I am now at a point where I am able to correctly identify the parent commit, but when trying to update the from information I get the above message.
Thanks in advance for your help,
-- Vitor Antunes