hgext/mq.py
changeset 20924 e10000369b47
parent 20827 ca5dd216cb62
child 20959 b6e0616d08cb
equal deleted inserted replaced
20923:d771641b7051 20924:e10000369b47
  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