##// END OF EJS Templates
merge: hoist some working manifest logic out of merge loop
Matt Mackall -
r2894:f28f4c85 default
parent child Browse files
Show More
@@ -116,8 +116,12 b' def update(repo, node, branchmerge=False'
116 umap = dict.fromkeys(unknown)
116 umap = dict.fromkeys(unknown)
117
117
118 for f in added + modified + unknown:
118 for f in added + modified + unknown:
119 mw[f] = None
119 mw[f] = ""
120 if f in m1: mw[f] = "" # distinguish between changed and new
120 # is the wfile new and matches m2?
121 if (f not in m1 and f in m2 and
122 not repo.file(f).cmp(m2[f], repo.wread(f))):
123 mw[f] = m2[f]
124
121 mw.set(f, util.is_exec(repo.wjoin(f), mw.execf(f)))
125 mw.set(f, util.is_exec(repo.wjoin(f), mw.execf(f)))
122
126
123 for f in deleted + removed:
127 for f in deleted + removed:
@@ -139,11 +143,6 b' def update(repo, node, branchmerge=False'
139 if f in m2:
143 if f in m2:
140 s = 0
144 s = 0
141
145
142 # is the wfile new and matches m2?
143 if mw[f] == None:
144 if not repo.file(f).cmp(m2[f], repo.wread(f)):
145 n = m2[f]
146
147 # are files different?
146 # are files different?
148 if n != m2[f]:
147 if n != m2[f]:
149 a = ma.get(f, nullid)
148 a = ma.get(f, nullid)
General Comments 0
You need to be logged in to leave comments. Login now