##// END OF EJS Templates
merge.mergestate: add support for persisting driver-resolved files...
Siddharth Agarwal -
r26650:6ff5534c default
parent child Browse files
Show More
@@ -61,6 +61,8 b' class mergestate(object):'
61 L: the node of the "local" part of the merge (hexified version)
61 L: the node of the "local" part of the merge (hexified version)
62 O: the node of the "other" part of the merge (hexified version)
62 O: the node of the "other" part of the merge (hexified version)
63 F: a file to be merged entry
63 F: a file to be merged entry
64 D: a file that the external merge driver will merge internally
65 (experimental)
64 m: the external merge driver defined for this merge plus its run state
66 m: the external merge driver defined for this merge plus its run state
65 (experimental)
67 (experimental)
66
68
@@ -125,7 +127,7 b' class mergestate(object):'
125 _("merge driver changed since merge started"),
127 _("merge driver changed since merge started"),
126 hint=_("revert merge driver change or abort merge"))
128 hint=_("revert merge driver change or abort merge"))
127 self._mdstate = mdstate
129 self._mdstate = mdstate
128 elif rtype == 'F':
130 elif rtype in 'FD':
129 bits = record.split('\0')
131 bits = record.split('\0')
130 self._state[bits[0]] = bits[1:]
132 self._state[bits[0]] = bits[1:]
131 elif not rtype.islower():
133 elif not rtype.islower():
@@ -254,7 +256,10 b' class mergestate(object):'
254 records.append(('m', '\0'.join([
256 records.append(('m', '\0'.join([
255 self.mergedriver, self._mdstate])))
257 self.mergedriver, self._mdstate])))
256 for d, v in self._state.iteritems():
258 for d, v in self._state.iteritems():
257 records.append(('F', '\0'.join([d] + v)))
259 if v[0] == 'd':
260 records.append(('D', '\0'.join([d] + v)))
261 else:
262 records.append(('F', '\0'.join([d] + v)))
258 self._writerecords(records)
263 self._writerecords(records)
259 self._dirty = False
264 self._dirty = False
260
265
General Comments 0
You need to be logged in to leave comments. Login now