Re: Trying to sync two svn repositories with git-svn (repost)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, May 2, 2009 at 5:58 PM, Josef Wolf <jw@xxxxxxxxxxxxx> wrote:
> Somehow, I still can't get it work.  This is what I do:
[...]
>  # move stuff from svn-2 to svn-1
>  #
>  git svn fetch svn-2
>  git checkout svn-1
>  git cherry-pick 05b964
>  [  continue cherry-picking ]
>  git merge --no-ff -s ours svn-1

Note that you probably should be merging '-s ours svn-2' here, not
svn-1.  svn-1 already contains svn-1 (of course) so that merge didn't
do anything.  It most especially doesn't mark svn-1 as being
up-to-date with svn-2, and that's probably going to make trouble
later.

>  # check what I have done
>  #
>  git diff svn-1-orig svn-1/trunk # shows what I expect

This is unsurprising, since you haven't changed either branch during the above.

>  # move the result to svn-1
>  #
>  git checkout svn-1/trunk
>  git merge --no-ff svn-1
>  git svn dcommit

This looks ok.

>  # move stuff from svn-1 to svn-2
>  #
>  git svn fetch svn-1
>  git checkout svn-2
>  git cherry-pick -n c9dae
>  [ continue cherry-picking ]
>  git merge --no-ff -s ours svn-2

Again, you seem to have merged in the wrong branch here.  This one
should be svn-1.

>  # check what I have done
>  #
>  git diff svn-2-orig svn-2/trunk # shows what I expect

Again, these branches haven't changed, so no surprise here either.

>  # move the result to svn-2
>  #
>  git checkout svn-2/trunk
>  git merge --no-ff svn-2
>  git svn dcommit

This seems ok.

> At this point, we should be synchronized.

Yes, although there are no merges between svn-1 and svn-2, so the next
attempt at merging will merge *everything*, causing conflicts.

>  git checkout svn-2/trunk
>  git svn fetch svn-1
>  git merge --no-ff svn-1
>
> BOOM.  Although no new commits were fetched, we get a lot of conflicts
> here.  So git is not fully aware about the fact that we are synchronized.

You seem to almost have it.  Fix the -s ours merges above and I think
you'll be in business.

Have fun,

Avery
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]