Re: REST-API: Merging/Rebasing with Mercurial?
Ralf Schlatterbeck <[email protected]>
| Newsgroups | gmane.comp.bug-tracking.roundup.devel |
|---|---|
| Message-ID | <[email protected]> |
On Wed, Jan 23, 2019 at 08:52:47AM +0100, Thomas Arendsen Hein wrote: [Description deleted] I must confess that your description of the process completely discouraged me. Life is too short to learn a second version control system in a way you obviously mastered it, especially when it's so different from what I'm used to. So what I did: - Convert the whole hg repo to git (including the pulled changes from the GSOC Repo) using reposurgeon - Rebase using git rebase --ignore-whitespace --whitespace=fix from the start of the GSOC branch with the destination of the current head - I had to resolve the whitespace-problematic commits of the first change and a later commit (the fourth or so) where a second file showed up that had wrong line-endings in the bugs.python.org branch. - During the merge I discovered two bug-fixes (that produced conflicts) on the bugs.python.org branch that I wanted to retain, so I cherry-picked them to a new branch based on head - Rebased the resulting GSOC branch a second time onto my cherrypick branch this time without problems - Fixed the new regression tests so that they run in our environment - Fixed python3 problem so that tests now run with both python versions - Fixed some security-related problems - Added changelog and attribution Now I though: Go back with this to mercurial. I discovered two tools that claim to support this (I'm on what I think is the latest mercurial version that I pulled with pip, version 4.8.2): - hgext.convert shipped with mercurial. Unfortunately this tool produces completely different hashes for the same commits. Even the first commit by Richard Jones has a different hash. This tool doesn't even work when I convert a fresh checkout of roundup from Sourceforge to hg (hg to hg!). In that case the first commits are the same but starting with 4567 the hashes differ. At least for mercurial the number of commits is the same. When converting from git I'm not even getting the same numbering. - fastimport claims to be able to read a git fast import file and convert this to a mercurial repo: This is even worse. It produces several additional heads and doesn't seem to have the latest commits. (reposurgeon tries to use this when exporting to hg that's why I tried this first) So it looks like I'm back to step 1 and now need to apply a set of patches I currently have in git on top of the current mercurial tip. Any suggestions on the tooling to do this? (And yes, I know I shouldn't have converted the thing to git but well..) Ralf -- Dr. Ralf Schlatterbeck Tel: +43/2243/26465-16 Open Source Consulting www: http://www.runtux.com Reichergasse 131, A-3411 Weidling email: [email protected]