svn's merge is unhelpful in all but the most simple merges.

When working with a subversion file store, I use SVK so that I can do
more complex merges with out having to manage the entire process.
Since SVK keeps track of copies and merges it allows me to sync
unmerged commits from one branch to another with ease.  And since the
command set is nearly identical, you might want to give it a try.  The
larger the project (or project team) the more branching and merging
you should be doing.

SVK: http://svk.bestpractical.com/view/HomePage

jbw

On 9/20/07, forkmantis <[EMAIL PROTECTED]> wrote:
>
> Matthais,
>
> Keep in mind that you have to manually track merges, as svn does not
> do this automatically.  At this point, I think you will need to do
> some cleanup, as what Kiril has suggested.  Once you get everything
> sorted out, here's what I do as a best practice to keep my branches
> merged and in sync.  Make sure your log messages are easily
> searchable, and include all of the needed info to keep you
> straightened out. I use "Created branch from -rXXX trunk" or "Merged /
> trunk -rXXX:YYY".
>
> So once you've had a branch going for a while, and you know something
> significant has happened that needs to be merged, I just run svn log
> from the root of my branch, and search for the last line in the log
> containing the world "merged".  I look at the last set of revisions
> merged, increment by one, and merge the new set, using a similar log
> message.  I also typically use a revision number for both parts,
> rather than XXX:HEAD, just so I explicitly know what the merge
> included.
>
> I'm sure you already have seen this, but just in case:
> http://svnbook.red-bean.com/nightly/en/svn.branchmerge.copychanges.html#svn.branchmerge.copychanges.bestprac
>
> On Sep 20, 7:18 am, Kiril Angov <[EMAIL PROTECTED]> wrote:
> > Matthias N. wrote:
> > > On 20 Sep., 13:29, Kiril Angov <[EMAIL PROTECTED]> wrote:
> >
> > >> Matthias N. wrote:
> >
> > >>> On 20 Sep., 12:25, Kiril Angov <[EMAIL PROTECTED]> wrote:
> >
> > >>>> Matthias N. wrote:
> >
> > >>>>> Hi devs,
> >
> > >>>>> in the past I had ugly problems with merging two svn directories:
> > >>>>> trunk and branches/mahono.
> >
> > >>>>> I tried it by hand and with kdiff3.. but unfortunately this is just a
> > >>>>> pain..
> >
> > >>>>> What is the best way to merge these dirs on a Debian/KDE machine? :-)
> >
> > >>>>> Do I have to checkout the whole repository to let subversion do the
> > >>>>> merge? Or is there a simpler way?
> >
> > >>>>> Any help is really appreciated as I would like to finally polish my
> > >>>>> suggestions for a change in the controller.
> >
> > >>>>> Regards,
> > >>>>> Matthias
> >
> > >>>> Matthias,
> >
> > >>>> When keeping a branch from an actively changing trunk/ you should merge
> > >>>> the changes from trunk into your branch very often in order to avoid 
> > >>>> one
> > >>>> big mess when trying to get the latest changes from trunk. In short:
> >
> > >>>> cd /your/banch/checkout
> > >>>> svn merge -r 4634:HEADhttp://svn.symfony-project.com/trunk.
> >
> > >>> Thank you!
> > >>> Why did you try this revision? Can't I use the revision of the latest
> > >>> change of my branch: 4774?
> > >>> Trying the command with --dry-run I get some "missing target" errors.
> > >>> How can I solve them?
> >
> > >>>> I just tried that and it gives many conflicts and also it seems like
> > >>>> revision 4634 is not the oldest revision you have not merged from trunk
> > >>>> into your branch. I tried to look at the svn logs to see when was the
> > >>>> last time you merged from trunk/ but I guess you were not merging the
> > >>>> whole trunk/ but just parts of it (like libs/). If I understood right,
> > >>>> you want to merge the latest changes from trunk/ into your branch,
> > >>>> right? If that's the case, look at the above command and figure out the
> > >>>> right start revision and maybe in your case you need to do several 
> > >>>> merges.
> >
> > >>> Yeah, I want to update my branch to current trunk.
> > >>> You mean I have to find the first revision after my last merge that
> > >>> works without "missing target" errors?
> >
> > >>> Regards,
> > >>> Matthias
> >
> > >> You kind of did a mistake when you were merging from trunk/ into your
> > >> branch and was merging only certain directories but not the whole tree.
> > >> The missing targets are some test files which were added before revision
> > >> 4634 (and are not present you your branch) and then were changed in
> > >> revisions after 4634. You cannot use the latest revision your branch was
> > >> changed because it is not when you last merged from trunk/
> >
> > >>http://trac.symfony-project.com/trac/log/branches/mahono?action=stop_...
> >
> > >> I tried to run a merge command from revision 4591 when was your latest
> > >> full merge from trunk/ but I still get the missing targets and it does
> > >> not merge cleanly. Without knowing how you merged from trunk until now,
> > >> I really do not know what to advise you.
> >
> > >> Kupo
> >
> > > Like I said: I did these merges by hand as I didn't get the right
> > > command / options to work..
> >
> > > Hm..  maybe I should remove the branch and copy it from trunk once
> > > again (not sure if I have the svn permission to do that) and continue
> > > with a clean branch!? I'm afraid this is the easiest way..
> >
> > > Regards,
> > > Matthias
> >
> > If your branch was not so much out of sync (because of the many changes
> > that have been happening to trunk/) you could do the following:
> >
> > svn 
> > mvhttp://svn.symfony-project.com/branches/mahonohttp://svn.symfony-project.com/branches/mahono-old
> > svn 
> > cphttp://svn.symfony-project.com/trunkhttp://svn.symfony-project.com/branches/mahono
> > svn cohttp://svn.symfony-project.com/branches/mahono
> > cd mahono
> > svn merge -r 3964:4618http://svn.symfony-project.com/branches/mahono-old.
> > svn merge -r 4650:4774http://svn.symfony-project.com/branches/mahono-old.
> >
> > and then you would have all cahnges from your old branch merged with you
> > new branch. But it fact there are a lot of files which you changed and
> > now are missing (deleted while refactoring). So you will have to port
> > your changes one by one to a new branch which is a current copy of trunk/
> >
> > Just my opinion ;)
> > Kupo
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/symfony-devs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to