Hi Robert Another approach may be to use "git subtree" based on the git-svn repo from github.
I quickly tested moving "repoinit" out of a clone of https://github.com/apache/sling using "git subtree split -P bundles/jcr/repoinit -b repoinit" as described by a stackoverflow answer[0]. This seems to have worked "better", I have history back to http://svn.apache.org/r1744564, at which point the module was copied from "bundles/commons/repoinit" to "bundles/extensions/repoinit". But here it cuts off again. Regards Julian [0] https://stackoverflow.com/questions/359424/detach-move-subdirectory-into-separate-git-repository/17864475#17864475 On Thu, Sep 21, 2017 at 10:18 AM, Robert Munteanu <[email protected]> wrote: > Hi Julian, > > On Thu, 2017-09-21 at 10:01 +0200, Julian Sedding wrote: >> Hi Robert >> >> Thanks for pushing the conversion forward! >> >> IIUC your script uses https://github.com/apache/sling as the source >> repository. I believe this is created using git-svn. (I'd be happy >> for >> a pointer that I am wrong!) > > Yes, that is the case. > >> >> According to Eric Raymond (http://esr.ibiblio.org/?p=6778), who >> claims >> to have some experience with svn to git migrations, git-svn is not up >> to the task. Maybe that's where the history is lost. >> >> In any case, I think we need to start the migration from the SVN >> repository, given that https://github.com/apache/sling already lacks >> the history. >> >> Maybe reposurgeon, the tool E. Raymond wrote, can help overcome the >> issue with lost history when copying branches? > > I'll try reposurgeon, thanks for the pointer. The thing is that the git > remote seems to have the right rename handling, but it's lost when I > create the module. But let's see after I try reposurgeon. > > Thanks, > > Robert > >> >> Regards >> Julian >> >> >> >> On Wed, Sep 20, 2017 at 5:42 PM, Robert Munteanu <[email protected]> >> wrote: >> > Hi, >> > >> > I did a dry run migration of two sling bundles: >> > >> > https://github.com/rombert/TMP-sling-org.apache.sling.api >> > https://github.com/rombert/TMP-sling-org.apache.sling.jcr.repoini >> > t >> > >> > Please take a look and check if _anything_ is wrong. I think that I >> > have the process narrowed down more or less using the scripts at >> > [1]. >> > >> > What I know is missing is move tracking. For some reason, the >> > jcr.repoinit module move is not captured and history starts after >> > the >> > move from bundles/extensions. ( SVN [2], git [3] ). Any help with >> > what >> > would be great. >> > >> > Also I've created a small repo tool setup at >> > >> > https://github.com/rombert/TMP-sling-manifest >> > >> > The instructions are in the README, but you need to install repo >> > >> > $ curl https://storage.googleapis.com/git-repo-downloads/repo > >> > ~/bin/repo >> > $ chmod a+x ~/bin/repo >> > >> > And then sync your local checkout >> > >> > $ repo init -u https://github.com/rombert/TMP-sling-manifest.git >> > $ repo sync >> > >> > Any feedback is welcome, please do look into the migrated >> > repositories >> > or maybe propose some tougher migrations. If you are so inclined, >> > the >> > scripts at tooling/scm/scripts [1] can also use a second pair of >> > eyes >> > :-) >> > >> > I'm going to leave this open for a week or so, but maybe after that >> > we >> > can start migrating from SVN. >> > >> > Thanks, >> > >> > Robert >> > >> > >> > [1]: https://svn.apache.org/repos/asf/sling/trunk/tooling/scm/scrip >> > ts/ >> > [2]: http://svn.apache.org/viewvc?view=revision&revision=1752162 >> > [3]: https://github.com/apache/sling/commit/087f2d0504dc0b8c38fd298 >> > ab9c >> > 29f896321f8c8 >
