Mercurial > public > mercurial-scm > hg
comparison mercurial/merge.py @ 3104:ef4e5d05bac4
Merge with mainline
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 17 Sep 2006 16:02:09 -0500 |
parents | e6818b0b8154 fe9b13e35e46 |
children | 7c7469d41ade |
comparison
equal
deleted
inserted
replaced
3103:e6818b0b8154 | 3104:ef4e5d05bac4 |
---|---|
6 # of the GNU General Public License, incorporated herein by reference. | 6 # of the GNU General Public License, incorporated herein by reference. |
7 | 7 |
8 from node import * | 8 from node import * |
9 from i18n import gettext as _ | 9 from i18n import gettext as _ |
10 from demandload import * | 10 from demandload import * |
11 demandload(globals(), "util os tempfile") | 11 demandload(globals(), "errno util os tempfile") |
12 | 12 |
13 def fmerge(f, local, other, ancestor): | 13 def fmerge(f, local, other, ancestor): |
14 """merge executable flags""" | 14 """merge executable flags""" |
15 a, b, c = ancestor.execf(f), local.execf(f), other.execf(f) | 15 a, b, c = ancestor.execf(f), local.execf(f), other.execf(f) |
16 return ((a^b) | (a^c)) ^ a | 16 return ((a^b) | (a^c)) ^ a |
163 if not queued and m1.execf(f) != m2.execf(f): | 163 if not queued and m1.execf(f) != m2.execf(f): |
164 if overwrite: | 164 if overwrite: |
165 repo.ui.debug(_(" updating permissions for %s\n") % f) | 165 repo.ui.debug(_(" updating permissions for %s\n") % f) |
166 action.append((f, "e", m2.execf(f))) | 166 action.append((f, "e", m2.execf(f))) |
167 else: | 167 else: |
168 if fmerge(f, m1, m2, ma) != m1.execf(f): | 168 mode = fmerge(f, m1, m2, ma) |
169 if mode != m1.execf(f): | |
169 repo.ui.debug(_(" updating permissions for %s\n") | 170 repo.ui.debug(_(" updating permissions for %s\n") |
170 % f) | 171 % f) |
171 action.append((f, "e", m2.execf(f))) | 172 action.append((f, "e", m2.execf(f))) |
172 del m2[f] | 173 del m2[f] |
173 elif f in ma: | 174 elif f in ma: |