Re: re-synchronize Darcs and Git repository
Ben Franksen <[email protected]> Tue, 23 Jul 2024 08:31:08 +0200
| Newsgroups | gmane.comp.version-control.darcs.user |
|---|---|
| Message-ID | <[email protected]> |
On 7/10/24 8:00 PM, Henning Thielemann wrote: > > Years ago I did a one-time conversion of a Git repository to Darcs. Now > I want to reactivate and resynchronize to the old Git repository. > > I created darcs.marks and git.marks manually, both ending with the same > patch. However, it appears that the Git repository has less commits than > the Darcs repository. Maybe Darcs got some patches from Git branches? Quite possible. > When doing incremental patch transfer, git-fast-import complains about > the gap between the number of the last git commit and the new darcs commit. > > As a quick hack I repeated the last commit in git.marks until the line > numbers in darcs.marks and git.marks match. Now, Git starts importing > patches but aborts with: > > ... > progress (patches converted) > progress (cleaning up) > progress done > Warnung: Not updating refs/heads/master (new tip > 8edfcacc61dc7c6cc35ad8f52a95bc9a18a7e40b does not contain > 4e08f55977f6b3090b38e1331551a59cf207c5cc) > fast-import statistics: > ... > > > In a next attempt I could try to manually decrease patch numbers in the > output of 'darcs export'. But I would have to do this for every export. > > Or do you think, converting forth and back Git cannot work? I don't think there is anything in principle that makes this impossible (apart from the obvious limitations wrt re-ordering) but the import and export commands are probably not quite up to it. I must say that I don't fully understand their implementations and why they have failed in your case, partly because I don't fully understand the git export format. Sorry I can't be more helpful. Cheers Ben