On Tue, 12 May 2015 04:39:32 -0700 (PDT)
J66st <vdplas.jo...@gmail.com> wrote:

> I have two repositories A and B. A is my working repository. B is a
> bare repository containing a more detailed history than A. This is
> illustrated in the following simplified graphs.
> A1--------D1---------E--F--G [master]
>                       \  \
>                        H--I--J [topic]
> A2---B2--C2--D2

> Notice that both histories use identical tag names for tagging
> versions! My first idea is to set repository B as a remote to
> repository A, then fetch from B, rebase E onto D2, then prune A1 thru
> D1.

That is correct.

> But wouldn't fetching from repository B cause the tag names to clash?

You're not forced to fetch tags.
Use something like

  git fetch B 'refs/heads/master:refs/heads/mb'

and you'll get a local branch named "mb" containing the history of
"master" available in "B".

What I'm more concerned with is that rebasing E onto D2 will surely
break H..J because your E, F, G will turn into E', F', G' with changed
SHA1 names.

So *may be* you will instead want to use `git replace` replacing
D1 with D2 so that E and the descendant commits are left intact.

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to