gitsvnsvn2git

what's the 'marks' file in repo folder generated by svn-all-fast-export for?


I am using the svn2git tool namely svn-all-fast-export written by the KDE guys to migrate some repos from SVN to Git. Sources are available at github

In the resulting Git bare folder, there is a file marks-<reponame>. It contains entries like:

:13 3072a401f97757160dc0943d287328feed97b838
:14 d5f658e7ca286ba4b05ddd28cad1dae486ff5a00
:15 b01559e660078de3c614cdd8a72398d8a6cd74b1
:16 2e4efc6ecbe8cc619f2df403d0ac2664041acbbe
(...)
:18446744073709551613 8f4c22ee321fbb452fede97933ce7078a4fda9ab
:18446744073709551614 339edf4fad5c4ca4a42feaae194c002fac220ead

I don't expect a file like this to remains in that folder.

I have two questions:


Solution

  • If you finished the migration, you can safely delete it.

    It is used to run in multiple steps. The file contains information that svn2git needs to correctly proceed in such a case.

    It cannot delete the file itself, because you might do the run, then there are 50 additional SVN commits and you continue from where you stopped, then the marks file is needed to not have to run from scratch again.