##// END OF EJS Templates
correctly record file-level history when the local side renames a directory
Alexis S. L. Carvalho -
r5229:dee573ba default
parent child Browse files
Show More
@@ -612,7 +612,9 b' class localrepository(repo.repository):'
612 elif fp1 != nullid: # copied on local side, reversed
612 elif fp1 != nullid: # copied on local side, reversed
613 meta["copyrev"] = hex(manifest2.get(cp))
613 meta["copyrev"] = hex(manifest2.get(cp))
614 fp2 = fp1
614 fp2 = fp1
615 else: # directory rename
615 elif cp in manifest2: # directory rename on local side
616 meta["copyrev"] = hex(manifest2[cp])
617 else: # directory rename on remote side
616 meta["copyrev"] = hex(manifest1.get(cp, nullid))
618 meta["copyrev"] = hex(manifest1.get(cp, nullid))
617 self.ui.debug(_(" %s: copy %s:%s\n") %
619 self.ui.debug(_(" %s: copy %s:%s\n") %
618 (fn, cp, meta["copyrev"]))
620 (fn, cp, meta["copyrev"]))
@@ -24,9 +24,11 b' hg merge --debug 1'
24 echo a/* b/*
24 echo a/* b/*
25 hg st -C
25 hg st -C
26 hg ci -m "3 merge 2+1" -d "0 0"
26 hg ci -m "3 merge 2+1" -d "0 0"
27 hg debugrename b/c
27
28
28 hg co -C 1
29 hg co -C 1
29 hg merge --debug 2
30 hg merge --debug 2
30 echo a/* b/*
31 echo a/* b/*
31 hg st -C
32 hg st -C
32 hg ci -m "4 merge 1+2" -d "0 0"
33 hg ci -m "4 merge 1+2" -d "0 0"
34 hg debugrename b/c
@@ -29,6 +29,7 b' A b/c'
29 R a/a
29 R a/a
30 R a/b
30 R a/b
31 R a/c
31 R a/c
32 b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88
32 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
33 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
33 resolving manifests
34 resolving manifests
34 overwrite None partial False
35 overwrite None partial False
@@ -40,3 +41,4 b' 1 files updated, 0 files merged, 0 files'
40 a/* b/a b/b b/c
41 a/* b/a b/b b/c
41 A b/c
42 A b/c
42 a/c
43 a/c
44 b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88
General Comments 0
You need to be logged in to leave comments. Login now