Mercurial > hg-stable
diff mercurial/copies.py @ 25288:947771ad5174
copies: document hack for adding '' to set of dirs
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.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Fri, 22 May 2015 14:02:04 -0700 |
parents | 0f28815ef066 |
children | 6ac860f700b5 |
line wrap: on
line diff
--- a/mercurial/copies.py Tue May 26 23:14:50 2015 +0900 +++ b/mercurial/copies.py Fri May 22 14:02:04 2015 -0700 @@ -370,6 +370,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()