Eclipse CVS user confused by merge process in subversive

marc.wren
Posts: 1
Joined: Mon Jun 11, 2007 9:54 pm

Eclipse CVS user confused by merge process in subversive

Postby marc.wren » Mon Jun 11, 2007 11:30 pm

In CVS for Eclipse, merging one branch to another requires the following steps:

1. move to the branch you wish to merge into
2. compare the branch you are in with the branch from which you wish to pull changes
3. replace or merge files that show up in the synchronize window

However, I am completely confused by how I can acheive the same results while using subversive. I have tried the following:

1. Team > Merge
2. This brings up a dialog where I can specify the two branches between which I'd like to merge

However, all of the merging appears to be done automatically which can be a problem if I don't want to merge all of the files. It also leaves me with a bunch of merge files titled something like "myFile-merge-right.xxx.tmp" and "myFile.xxx.working" but does not seem to actually merge any of the code. Thanks in advance for your help.

ldornbusch
Posts: 19
Joined: Wed May 23, 2007 7:55 am
Location: Germany
Contact:

Re: Eclipse CVS user confused by merge process in subversive

Postby ldornbusch » Tue Jun 12, 2007 7:25 am

marc.wren wrote:[...]
However, I am completely confused by how I can acheive the same results while using subversive. I have tried the following:

1. Team > Merge
2. This brings up a dialog where I can specify the two branches between which I'd like to merge
[..]


Your 2nd point is wrong. A merge always merges a range of changes[aka a range of revisions] INTO your workingcopy. So the merge dialog shows not source and destination of your merge, but beginning and end of revisions and the path describing the changes you want to apply to your working copy(remember: to locate changes, you always have to provide a revisionnumber and a repo-path).
A merge cannot be applied to repository, because there could be some conflicts which have to be resolved.
Also a very good advice is to note the revisionnumbers and path on a sheet of paper before pressing the "merge"-button. You can add these data in your commit message after cleaning all conflicts in your working copy, because SVN does not any mergetracking(should be implemented in SVN 1.5). As you will see you will forget these data during complex conflict editing and there is no way of getting this data back, except doing the merge again.
Greetings,
ldornbusch

hackerdan
Posts: 4
Joined: Fri Jul 06, 2007 12:03 pm

Re: Eclipse CVS user confused by merge process in subversive

Postby hackerdan » Fri Jul 06, 2007 12:23 pm

As I tried my first merge with subversion I was also puzzled about the "range" of revisions and not seeing where my branch was started. I do not need the "range", I need to merge a branch from its head revision into the trunk starting at the branch-point.

The part I am missing most is point 3. of marc.wrens posting.
I would like a synchronize view which shows me what is going to be merged and see what are the changes (compare view).

The generated xxx.revision or xxx.mine files are of no use to me.
The worst thing is, that it breaks every conflicting file: java files do not compile, .classpath files break up the whole project, etc.

Is there something similar as CVSs merge behavior planned and not generating the xxx.revision and xxx.mine files?

Alexander Gurov
Posts: 205
Joined: Fri Mar 17, 2006 11:33 am

Postby Alexander Gurov » Mon Jul 09, 2007 1:58 pm

Dear hackerdan,

You can use Team->Edit Conflicts action in order to perform merge of files for which xxx.mine is produced. After you complete merge of these files please call Team->Mark as Merged action. These actions will solve the described problem.
Best regards,
Alexander Gurov
Subversive Team

hackerdan
Posts: 4
Joined: Fri Jul 06, 2007 12:03 pm

Postby hackerdan » Mon Jul 09, 2007 2:24 pm

Alexander,

Alexander Gurov wrote:You can use Team->Edit Conflicts action in order to perform merge of files for which xxx.mine is produced. After you complete merge of these files please call Team->Mark as Merged action. These actions will solve the described problem.


Sorry, but this looks awkward to me.
- initially conflicting files are broken
For each file, I have to
- navigate to the file
- choose edit conflicts
- edit/merge the conflicts
- choose mark as merged

I would like to do this somewhat "compressed":
- see all conflicting files at once and where they are (tree/navigator view)
- edit/merge the conflicts for each of them
Doing "edit conflicts" would be a double-click or Return-Keypress.
Mark as merged would be obsolete by being in the "merge process" anyway.

This is how CVS does a merge and this should be possible with SVN as well.

I assume that subversive simply calls some underlying service methods from some DLL (or whatever) which does the so called "merge" directly in the file system. If it would be possible to intercept it or call another method, the same presentation as CVS could be made.

Alexander Gurov
Posts: 205
Joined: Fri Mar 17, 2006 11:33 am

Postby Alexander Gurov » Mon Jul 09, 2007 3:39 pm

Dear hackerdan,

Unfortunately Subversion (on which basis Subversive is constructed) does not support corresponding mode of merge. At the same time you can perform in "compressed" way at least "Edit Conflicts" action. After merge please select project node which contains merge conflicts and call "Edit Conflicts" action, in that case all conflicted files will be opened in conflict editors at once.
Now Subversion team works on the merge improvements, so it is possible that one of new Subversion versions (potentially 1.5.0) can give us required API's.

P.S.
At the same time for default Subversive provider (JavaSVN 1.0.4) exists extended API's which allows to use described merge mode, but this interfaces are too buggy and do not supports SVN 1.4. So we cannot recommend to use it.
Best regards,

Alexander Gurov

Subversive Team

hackerdan
Posts: 4
Joined: Fri Jul 06, 2007 12:03 pm

Postby hackerdan » Tue Jul 10, 2007 6:53 am

Alexander,

thank you for the additional information about SVN 1.5.

I already tried that experimental interactive merge but it did not work.


Return to “Polarion Subversive - Eclipse Client for SVN”

Who is online

Users browsing this forum: No registered users and 3 guests