Show More
@@ -1035,7 +1035,13 b' class committablectx(basectx):' | |||||
1035 |
|
1035 | |||
1036 | @propertycache |
|
1036 | @propertycache | |
1037 | def _manifest(self): |
|
1037 | def _manifest(self): | |
1038 |
"""generate a manifest corresponding to the values in self._status |
|
1038 | """generate a manifest corresponding to the values in self._status | |
|
1039 | ||||
|
1040 | This reuse the file nodeid from parent, but we append an extra letter | |||
|
1041 | when modified. Modified files get an extra 'm' while added files get | |||
|
1042 | appened an extra 'a'. This is used by manifests merge to see that files | |||
|
1043 | are different and by update logic to avoid deleting newly added files. | |||
|
1044 | """ | |||
1039 |
|
1045 | |||
1040 | man1 = self._parents[0].manifest() |
|
1046 | man1 = self._parents[0].manifest() | |
1041 | man = man1.copy() |
|
1047 | man = man1.copy() |
@@ -457,7 +457,10 b' def manifestmerge(repo, wctx, p2, pa, br' | |||||
457 | actions['r'].append((f, None, "remote delete")) |
|
457 | actions['r'].append((f, None, "remote delete")) | |
458 | else: |
|
458 | else: | |
459 | actions['cd'].append((f, None, "prompt changed/deleted")) |
|
459 | actions['cd'].append((f, None, "prompt changed/deleted")) | |
460 |
elif n1[20:] == 'a': |
|
460 | elif n1[20:] == 'a': | |
|
461 | # This extra 'a' is added by working copy manifest to mark the | |||
|
462 | # file as locally added. We should forget it instead of | |||
|
463 | # deleting it. | |||
461 | actions['f'].append((f, None, "remote deleted")) |
|
464 | actions['f'].append((f, None, "remote deleted")) | |
462 | else: |
|
465 | else: | |
463 | actions['r'].append((f, None, "other deleted")) |
|
466 | actions['r'].append((f, None, "other deleted")) |
General Comments 0
You need to be logged in to leave comments.
Login now