Re: [PATCH 13/10] vcs-svn: use mark from previous import for parent commit
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Dec 12, 2010, 17:06 UTC
- Message-ID
- <20101212170629.GA18847@burratino>
- In-Reply-To
- <11EEDD77-214C-44DB-AC7B-C1A086E35E4C@cordelta.com>
David Michael Barr wrote:
> Subject: [PATCH] vcs-svn: use mark from previous import for parent commit
[...]
Show 7 quoted lines
> +++ b/vcs-svn/fast_export.c
> @@ -77,7 +77,7 @@ void fast_export_begin_commit(uint32_t revision, uint32_t
> log, gitsvnline);
> if (!first_commit_done) {
> if (revision > 1)
> - printf("from refs/heads/master^0\n");
> + printf("from :%"PRIu32"\n", revision - 1);This deals more sanely with attempts to continue an import starting at the wrong revision.
Example: if I try
import () {
rm -f backflow
mkfifo backflow svn-fe 3<backflow |
git fast-import --cat-blob-fd=3 \
--relative-marks \
${1+--import-marks=svnrevs} \
--export-marks=svnrevs \
3>backflow
}svnrdump -r0:100 $url | import svnrdump -r100:200 $url | import continue
then svn-fe should correctly re-import r100 the second time, instead of trying to apply the same deltas twice. If I try
svnrdump -r0:100 $url | import svnrdump -r102:200 $url | import continue
then the second command should error out.
Thanks, queued.