Thread (31 messages) flat view 31 messages, 2 authors, 2016-06-15

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

From: Josef Wolf <hidden>
Date: 2016-06-15 22:46:42

On Mon, May 04, 2009 at 11:58:20AM -0400, Avery Pennarun wrote:
On Sat, May 2, 2009 at 5:58 PM, Josef Wolf [off-list ref] wrote:
quoted
Somehow, I still can't get it work.  This is what I do:
[...]
quoted
 # 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.
Yeah, you're right.  That was a typo.

Fixing this, the "getting started" seems to work now: the cherry-picked
commits end up in the svn repositories.  But the synchronization after
the "getting started" does not seem to work yet.  Here's what I've done:

 git tag svn-1-orig svn-1
 git tag svn-2-orig svn-2

 # move cherries to svn-2
 #
 git svn fetch svn-1
 git checkout svn-2
 git cherry-pick c9da
 [ ... ]
 git merge --no-ff -s ours svn-1
 git checkout svn-2/trunk
 git merge --no-ff svn-2
 git svn dcommit
 git diff svn-2-orig svn-2/trunk   # check what I've done

 # move cherries to svn-1
 #
 git svn fetch svn-2
 git checkout svn-1
 git cherry-pick 05b9
 [ ... ]
 git merge --no-ff -s ours svn-2
 git checkout svn-1/trunk
 git merge --no-ff svn-1
 git svn dcommit
 git diff svn-1-orig svn-1/trunk   # check what I've done

 git diff svn-1/trunk svn-2/trunk  # shows the diffs I want to keep

 # now try a synchronization
 #
 git checkout svn-2/trunk
 git svn fetch svn-1      # nothing new was checked in yet
 git merge --no-ff svn-1
 git svn dcommit

Since no new commits were made in svn, those four commands should be
almost a no-op.

But Instead of merging only the changes that were done after the last
synchronization, the last dcommit makes svn-2/trunk identical to svn-1.
This effectively wipes all the differences which I would like to keep.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help