[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Merging - why do I need a path ?

From: William Nagel <bill_at_stagelogic.com>
Date: 2005-11-02 16:16:26 CET

Hi Simon,
> Hi - Can anybody explain to why when doing a merge you need to
> enter the path in the following manner:
>
> svn merge --dry-run -r 40:41 svn://ipofserver/phoenix/trunk/gui/mpa
> c:/scstest/hiptapp/mpa
>
> I'm trying to merge the commit that resulted in revision 41 -
> surely subversion knows what path(s) in the repository that
> revision 41 related to so why can't I just enter svn://ipofserver -
> I can sort of undertand why I need to enter a destination path for
> my working copy but am a confused what happens if revision 41
> included several files in different directories - do you just use
> the top most path as the path for your working copy.

You need to specify the source path/url because Subversion allows you
to merge from one base to another. For instance, if you wanted to
merge from /branch/branch1 to /trunk, you need to tell Subversion to
use /branch/branch1 as the base to merge from. The merge command
will then create a diff for the two supplied revisions and apply that
diff to the target working copy path. If you didn't supply the
source base, Subversion wouldn't have any idea what to use as a root
for the merge. Remember that /branches, /trunk, and /tags don't have
any special meaning to Subversion itself. They're just directories.
Any meaning they have is based on your own conventions.

> The reason I wanted to do this was to try & simplify my merging.
> When I do a commit I store that revision against a ticket number in
> a database & assumed that it would have been sufficient just to
> store the revision number rather than all the paths.

Better merge tracking is an oft-requested feature for Subversion, and
one that is definitely on the roadmap. It's just that it's a
difficult problem, and not one that anyone wants to rush into since
getting it wrong would likely be worse than not having it.

If you want merge tracking now though, you do have some options. You
might want to check out svnmerge and/or svk. Both are projects that
give you some better merge tracking (svk is much more than that,
though).

http://www.dellroad.org/svnmerge/index
http://svk.elixus.org/

-Bill

> Thanks - Can you include me in the reply as I not a member of the
> users mailing group - well I was but I got swamped with emails & my
> boss wasn't happy !
>
> Simon
>
>
> **********************************************************************
> ************
> This email and any files transmitted with it are confidential, and
> may be subject to legal privilege, and are intended solely for the
> use of the individual or entity to whom they are addressed.
> If you have received this email in error or think you may have done
> so, you may not peruse, use, disseminate, distribute or copy this
> message. Please notify the sender immediately and delete the
> original e-mail from your system.
>
> Computer viruses can be transmitted by e-mail. Recipients should
> check this e-mail for the presence of viruses. The Capita Group and
> its subsidiaries accept no liability for any damage caused by any
> virus transmitted by this e-mail.
> **********************************************************************
> *************

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Nov 2 16:18:39 2005

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.