[PATCH] copies: document hack for adding '' to set of dirs
Augie Fackler
raf at durin42.com
Tue May 26 18:46:09 UTC 2015
On Fri, May 22, 2015 at 04:06:53PM -0500, Martin von Zweigbergk wrote:
> # HG changeset patch
> # User Martin von Zweigbergk <martinvonz at google.com>
> # Date 1432328524 25200
> # Fri May 22 14:02:04 2015 -0700
> # Node ID d25b0f4d22dd272f7f0921345d2979b3ab221836
> # Parent f2b98dacb37ddd6713b11a1a871fcdbbc5fd8bb2
> copies: document hack for adding '' to set of dirs
Looks useful, queued.
>
> The root directory is not normally added to 'dirs' instances (although
> I think it should be). In copies.mergecopies, we call dirname() to get
> the directory of a path and then check for containment in the 'dirs'
> instances ('d1' and 'd2'). In order to easily handle files in the root
> directory, '/' is added to d1/d2. This results in the empty string
> being added to the sets, since what comes before the slash in '/' is
> an empty string. This seems less than obvious, so let's document it.
>
> diff --git a/mercurial/copies.py b/mercurial/copies.py
> --- a/mercurial/copies.py
> +++ b/mercurial/copies.py
> @@ -376,6 +376,7 @@
>
> # generate a directory move map
> d1, d2 = c1.dirs(), c2.dirs()
> + # Hack for adding '', which is not otherwise added, to d1 and d2
> d1.addpath('/')
> d2.addpath('/')
> invalid = set()
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list