incremental imports from incremental input streams
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar Fast Import |
Fix Released
|
Medium
|
Unassigned |
Bug Description
I'd like to use bzr fast-import to sync a Bazaar branch from Perforce.
It works if I do full exports from Perforce, but that doesn't scale
very well. Instead I'd like to do incremental migrations. Some
avenues I've explored include:
* fast-import's BadRestart validation
* fast-import's --import-marks option
* the 'from' command specified in the git fast-import documentation
Fast-import's BadRestart validation prevents importing, for example,
revision 3 by itself, to a repository that contains revisions 1 and 2.
Fast-import's --import-marks option raises KeyError if the incremental
import contains no overlapping revisions, e.g., revision 3 to a
repository containing revisions 1 and 2. On the other hand, if the
incremental import does contain overlapping revisions, e.g. revisions
2 and 3 to a repository containing revisions 1 and 2, then fast-import
creates a duplicate revision in the Bazaar branch for revision 2.
From the documentation, it sounds like the 'from' command in the
stream is what I want, but it looks like bzr fast-import doesn't
support it.
To the fast-import folks, how would you recommend I proceed?
Thanks,
Matt
Related branches
tags: | added: incremental |
Changed in bzr-fastimport: | |
importance: | Undecided → Medium |
status: | New → Triaged |
Changed in bzr-fastimport: | |
status: | Triaged → Fix Committed |
Changed in bzr-fastimport: | |
status: | Fix Committed → Fix Released |
milestone: | none → 0.10.0 |
Here is another usecase - Ian, please say if this should be a new bug:
User has a git repository that has a tree which is 'close enough' to some known revision in a bzr repository; they want to take the commits done on top of that tree in git, and import them to bzr. bzr-git is unsuitable - the bzr repository is not converted from git in the first place.
Something like 'git fast-export <last 5 commits> | bzr fast-import --append' would be one way to express this (where the bzr branch has been uncommitted or whatever to be a 'close enough' fit to the matching git tree.