3287 force) |
3287 force) |
3288 |
3288 |
3289 return super(mqrepo, self).commit(text, user, date, match, force, |
3289 return super(mqrepo, self).commit(text, user, date, match, force, |
3290 editor, extra) |
3290 editor, extra) |
3291 |
3291 |
3292 def checkpush(self, force, revs): |
3292 def checkpush(self, pushop): |
3293 if self.mq.applied and self.mq.checkapplied and not force: |
3293 if self.mq.applied and self.mq.checkapplied and not pushop.force: |
3294 outapplied = [e.node for e in self.mq.applied] |
3294 outapplied = [e.node for e in self.mq.applied] |
3295 if revs: |
3295 if pushop.revs: |
3296 # Assume applied patches have no non-patch descendants and |
3296 # Assume applied patches have no non-patch descendants and |
3297 # are not on remote already. Filtering any changeset not |
3297 # are not on remote already. Filtering any changeset not |
3298 # pushed. |
3298 # pushed. |
3299 heads = set(revs) |
3299 heads = set(pushop.revs) |
3300 for node in reversed(outapplied): |
3300 for node in reversed(outapplied): |
3301 if node in heads: |
3301 if node in heads: |
3302 break |
3302 break |
3303 else: |
3303 else: |
3304 outapplied.pop() |
3304 outapplied.pop() |
3305 # looking for pushed and shared changeset |
3305 # looking for pushed and shared changeset |
3306 for node in outapplied: |
3306 for node in outapplied: |
3307 if self[node].phase() < phases.secret: |
3307 if self[node].phase() < phases.secret: |
3308 raise util.Abort(_('source has mq patches applied')) |
3308 raise util.Abort(_('source has mq patches applied')) |
3309 # no non-secret patches pushed |
3309 # no non-secret patches pushed |
3310 super(mqrepo, self).checkpush(force, revs) |
3310 super(mqrepo, self).checkpush(pushop) |
3311 |
3311 |
3312 def _findtags(self): |
3312 def _findtags(self): |
3313 '''augment tags from base class with patch tags''' |
3313 '''augment tags from base class with patch tags''' |
3314 result = super(mqrepo, self)._findtags() |
3314 result = super(mqrepo, self)._findtags() |
3315 |
3315 |