##// END OF EJS Templates
manifestmerge: handle workdir removed, remote removed with flags...
Siddharth Agarwal -
r18895:ed676ed6 default
parent child Browse files
Show More
@@ -246,7 +246,13 b' def manifestmerge(repo, wctx, p2, pa, br'
246 if n12:
246 if n12:
247 n1, n2 = n12
247 n1, n2 = n12
248 else: # file contents didn't change, but flags did
248 else: # file contents didn't change, but flags did
249 n1 = n2 = m1[f]
249 n1 = n2 = m1.get(f, None)
250 if n1 is None:
251 # Since n1 == n2, the file isn't present in m2 either. This
252 # means that the file was removed or deleted locally and
253 # removed remotely, but that residual entries remain in flags.
254 # This can happen in manifests generated by workingctx.
255 continue
250 if fl12:
256 if fl12:
251 fl1, fl2 = fl12
257 fl1, fl2 = fl12
252 else: # flags didn't change, file contents did
258 else: # flags didn't change, file contents did
@@ -6,9 +6,16 b''
6
6
7 $ echo foo > foo
7 $ echo foo > foo
8 $ hg ci -qAm0
8 $ hg ci -qAm0
9 $ chmod +x foo
9 $ echo toremove > toremove
10 $ hg ci -m1
10 $ echo todelete > todelete
11 $ chmod +x foo toremove todelete
12 $ hg ci -qAm1
13
14 Test that local removed/deleted, remote removed works with flags
15 $ hg rm toremove
16 $ rm todelete
11 $ hg co -q 0
17 $ hg co -q 0
18
12 $ echo dirty > foo
19 $ echo dirty > foo
13 $ hg up -c
20 $ hg up -c
14 abort: uncommitted local changes
21 abort: uncommitted local changes
@@ -18,11 +25,13 b''
18 dirty
25 dirty
19 $ hg st -A
26 $ hg st -A
20 M foo
27 M foo
28 C todelete
29 C toremove
21
30
22 Validate update of standalone execute bit change:
31 Validate update of standalone execute bit change:
23
32
24 $ hg up -C 0
33 $ hg up -C 0
25 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
34 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
26 $ chmod -x foo
35 $ chmod -x foo
27 $ hg ci -m removeexec
36 $ hg ci -m removeexec
28 nothing changed
37 nothing changed
@@ -30,7 +39,7 b' Validate update of standalone execute bi'
30 $ hg up -C 0
39 $ hg up -C 0
31 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
40 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
32 $ hg up
41 $ hg up
33 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
42 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
34 $ hg st
43 $ hg st
35
44
36 $ cd ..
45 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now