Mercurial > public > mercurial-scm > hg-stable
diff mercurial/localrepo.py @ 3733:9e67fecbfd16
merge: handle directory renames
commit: handle new copy dirstate case correctly
findcopies:
keep a map of all copies found for directory logic
add dirs filter
check for merge:followdirs config option
generate a directory move map
find files that match directory move map
manifestmerge:
add directory rename cases
applyupdates:
skip actions with None file
add "d" action
recordupdates:
add "d" action
add simple directory rename test
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 30 Nov 2006 17:36:33 -0600 |
parents | 98f2507c5551 |
children | 9433bdcaa9ae |
line wrap: on
line diff
--- a/mercurial/localrepo.py Thu Nov 30 17:36:33 2006 -0600 +++ b/mercurial/localrepo.py Thu Nov 30 17:36:33 2006 -0600 @@ -553,9 +553,11 @@ fp2 = nullid elif fp2 != nullid: # copied on remote side meta["copyrev"] = hex(manifest1.get(cp, nullid)) - else: # copied on local side, reversed + elif fp1 != nullid: # copied on local side, reversed meta["copyrev"] = hex(manifest2.get(cp)) fp2 = nullid + else: # directory rename + meta["copyrev"] = hex(manifest1.get(cp, nullid)) self.ui.debug(_(" %s: copy %s:%s\n") % (fn, cp, meta["copyrev"])) fp1 = nullid