Note that there are some explanatory texts on larger screens.

plurals
  1. POMercurial to Mercurial to Subversion Workflow Problem
    text
    copied!<p>We're migrating from Subversion to Mercurial. To facilitate the migration, we're creating an intermediate Mercurial repository that is a clone of our Subversion repository. All developers will be begin switching over to the Mercurial repository, and we'll periodically push changes from the intermediate Mercurial repository to the existing Subversion repository. After a period of time, we'll simply obsolete the Subversion repository and the intermediate Mercurial repository will become the new system of record.</p> <pre><code>Dev 1 Local --+--&gt; Mercurial --+--&gt; Subversion Dev 2 Local --+ + Dev 3 Local --+ + Dev 4 -------------------------+ </code></pre> <p>I've been testing this out, but I keep running into a problem when I push changes from my local repository, to the intermediate Mercurial repository, and then up into our Subversion repository.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/01.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/01.png</a></p> <p>On my local machine, I have a changeset that is committed and ready to be pushed to our intermediate Mercurial repository. Here you can see it is revision #2263 with hash 625...</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/02.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/02.png</a></p> <p>I push only this changeset to the remote repository.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/03.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/03.png</a></p> <p>So far, everything looks good. The changeset has been pushed.</p> <pre><code>hg update 1 files updated, 0 files merged, 0 files removed, 0 files unresolved </code></pre> <p>I now switch over to the remote repository, and update the working directory.</p> <pre><code>hg push pushing to svn://... searching for changes [r3834] bmurphy: database namespace pulled 1 revisions saving bundle to /srv/hg/repository/.hg/strip-backup/62539f8df3b2-temp adding branch adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files rebase completed </code></pre> <p>Next, I push the change up to Subversion, works great. At this point, the change is in the Subversion repository and I return attention back to my local client.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/04.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/04.png</a></p> <p>I pull changes to my local machine. Huh? I've now got two changesets. My original changeset appears as a local branch now.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/05.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/05.png</a></p> <p>The other changeset has a new revision number 2264, and a new hash 10c1...</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/06.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/06.png</a></p> <p>Anyway, I update my local repo to the new revision.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/07.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/07.png</a></p> <p>I'm now switched over.</p> <p><a href="http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/08.png">alt text http://bmurphy.mediafly.com.s3.amazonaws.com/images/mercurial/08.png</a></p> <p>So, I finally click the "determine and mark outgoing changesets" and as you can see Mercurial still wants to push out my previous changesets even though they've already been pushed.</p> <p>Clearly, I'm doing something wrong. </p> <p>I also can't merge the two revisions. If I merge the two revisions on my local machine, I end up with a "merge" commit. When I push that merge commit out to the intermediate Mercurial repository, I can no longer push changes out to our Subversion repository. I end up with the following problem:</p> <pre><code>hg update 0 files updated, 0 files merged, 0 files removed, 0 files unresolved hg push pushing to svn://... searching for changes abort: Sorry, can't find svn parent of a merge revision. </code></pre> <p>and I have to rollback the merge to get back to a working state.</p> <p>What am I missing?</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload