Mercurial > hg > mercurial-crew-with-dirclash
comparison hgext/mq.py @ 2822:30f59f4a327e
Introduce update helper functions: update, merge, clean, and revert
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Mon, 07 Aug 2006 22:54:33 -0500 |
parents | 4b20daa25f15 |
children | 49988d9f0758 |
comparison
equal
deleted
inserted
replaced
2821:a8a7ce1a01a5 | 2822:30f59f4a327e |
---|---|
188 raise util.Abort(_("apply failed for patch %s") % patch) | 188 raise util.Abort(_("apply failed for patch %s") % patch) |
189 | 189 |
190 self.ui.warn("patch didn't work out, merging %s\n" % patch) | 190 self.ui.warn("patch didn't work out, merging %s\n" % patch) |
191 | 191 |
192 # apply failed, strip away that rev and merge. | 192 # apply failed, strip away that rev and merge. |
193 hg.update(repo, head, allow=False, force=True, wlock=wlock) | 193 hg.clean(repo, head, wlock=wlock) |
194 self.strip(repo, n, update=False, backup='strip', wlock=wlock) | 194 self.strip(repo, n, update=False, backup='strip', wlock=wlock) |
195 | 195 |
196 c = repo.changelog.read(rev) | 196 c = repo.changelog.read(rev) |
197 ret = hg.update(repo, rev, allow=True, wlock=wlock) | 197 ret = hg.merge(repo, rev, wlock=wlock) |
198 if ret: | 198 if ret: |
199 raise util.Abort(_("update returned %d") % ret) | 199 raise util.Abort(_("update returned %d") % ret) |
200 n = repo.commit(None, c[4], c[1], force=1, wlock=wlock) | 200 n = repo.commit(None, c[4], c[1], force=1, wlock=wlock) |
201 if n == None: | 201 if n == None: |
202 raise util.Abort(_("repo commit failed")) | 202 raise util.Abort(_("repo commit failed")) |
528 if update: | 528 if update: |
529 (c, a, r, d, u) = repo.changes(None, None) | 529 (c, a, r, d, u) = repo.changes(None, None) |
530 if c or a or d or r: | 530 if c or a or d or r: |
531 raise util.Abort(_("local changes found")) | 531 raise util.Abort(_("local changes found")) |
532 urev = self.qparents(repo, rev) | 532 urev = self.qparents(repo, rev) |
533 hg.update(repo, urev, allow=False, force=True, wlock=wlock) | 533 hg.clean(repo, urev, wlock=wlock) |
534 repo.dirstate.write() | 534 repo.dirstate.write() |
535 | 535 |
536 # save is a list of all the branches we are truncating away | 536 # save is a list of all the branches we are truncating away |
537 # that we actually want to keep. changegroup will be used | 537 # that we actually want to keep. changegroup will be used |
538 # to preserve them and add them back after the truncate | 538 # to preserve them and add them back after the truncate |
1017 print "queue directory updating" | 1017 print "queue directory updating" |
1018 r = self.qrepo() | 1018 r = self.qrepo() |
1019 if not r: | 1019 if not r: |
1020 self.ui.warn("Unable to load queue repository\n") | 1020 self.ui.warn("Unable to load queue repository\n") |
1021 return 1 | 1021 return 1 |
1022 hg.update(r, qpp[0], allow=False, force=True) | 1022 hg.clean(r, qpp[0]) |
1023 | 1023 |
1024 def save(self, repo, msg=None): | 1024 def save(self, repo, msg=None): |
1025 if len(self.applied) == 0: | 1025 if len(self.applied) == 0: |
1026 self.ui.warn("save: no patches applied, exiting\n") | 1026 self.ui.warn("save: no patches applied, exiting\n") |
1027 return 1 | 1027 return 1 |