Web lists-archives.com

Re: Merging (joining/stiching/rewriting) history of "unrelated" git repositories




On Wed, May 15, 2019 at 5:25 PM Ævar Arnfjörð Bjarmason
<avarab@xxxxxxxxx> wrote:
>
>
> On Wed, May 15 2019, Piotr Krukowiecki wrote:
>
> > Hello,
> >
> > I'm migrating two repositories from svn. I already did svn->git
> > migration (git-svn clone) and now have two git repositories.
> >
> > I would like to merge them into 1 git repository, but to merge also
> > history - branches and tags.
> >
[...]
> > There's additional difficulty of handling merges...
> >
> You might be able to use https://github.com/newren/git-filter-repo
>
> But I'd say try something even more stupid first:
>
>  1. Migrate repo A to Git
>  2. Migrate repo B to Git
>  3. "git subtree add" B's history to A
>  4. "git rebase" the history to linear-ize it
>
> At this point you'll have A's history first, then B. Then run some
> script to date order the commits, and just "git cherry-pick" those in
> the order desired in a loop to a fresh history.
>
> Maybe that sort of stupidity will wreck your merges etc., so you might
> need less stupid methods :)

I think both git-filter-repo and the subtree+rebase do not handle
branches/merges well :(


-- 
Piotr Krukowiecki