On Thu, Apr 9, 2009 at 10:40 AM, Paul Burba <ptburba_at_gmail.com> wrote:
> Currently (trunk_at_37129) the default depth of a merge is the depth of
> the merge target. If the target has children that are at a deeper
> depth then those children are not merged to.
>
> For example, say we have this merge target:
>
> branch/ (depth == immediates)
> branch/notes/ (depth == empty)
> branch/src/ (depth == infinity)
> branch/README.TXT (depth N/A)
>
> If we merge with no depth option specified the merge will not merge
> any applicable changes into branch/src/*.
>
> Several people find this a bit counter-intuitive, and I agree:
>
> http://svn.haxx.se/dev/archive-2009-03/0701.shtml
>
> This can be worked around by passing --depth=infinity to the merge
> subcommand, but I doubt many users will realize this.
>
> Also, this is inconsistent with how update works. In the above
> example if we update branch with no --depth or --set-depth option then
> branch/src/* would get any available updates.
>
> I'd like to change merge's default depth to infinity. Any objections
> or thoughts?
+1
Not to hijack this, but there are other depth problems lurking. For
example, using your above example, this command:
svn update --set-depth=infinity branches
Does not change the depth of any of the children of branches to
infinity. I cannot imagine anyone thinks that is the right behavior.
--
Thanks
Mark Phippard
http://markphip.blogspot.com/
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1620064
Received on 2009-04-10 01:41:41 CEST