mercurial/commands.py
changeset 32823 cb48dfd9672d
parent 32766 fbe9c4dcc8a0
child 32844 76bb53f8d374
equal deleted inserted replaced
32822:e65ff29dbeb0 32823:cb48dfd9672d
     7 
     7 
     8 from __future__ import absolute_import
     8 from __future__ import absolute_import
     9 
     9 
    10 import difflib
    10 import difflib
    11 import errno
    11 import errno
    12 import itertools
       
    13 import os
    12 import os
    14 import re
    13 import re
    15 import sys
    14 import sys
    16 
    15 
    17 from .i18n import _
    16 from .i18n import _
   779         '--good': good,
   778         '--good': good,
   780         '--reset': reset,
   779         '--reset': reset,
   781         '--skip': skip,
   780         '--skip': skip,
   782     }
   781     }
   783 
   782 
   784     for left, right in itertools.combinations(sorted(incompatibles), 2):
   783     enabled = [x for x in incompatibles if incompatibles[x]]
   785         if incompatibles[left] and incompatibles[right]:
   784 
   786             raise error.Abort(_('%s and %s are incompatible') % (left, right))
   785     if len(enabled) > 1:
       
   786         raise error.Abort(_('%s and %s are incompatible') %
       
   787                           tuple(sorted(enabled)[0:2]))
   787 
   788 
   788     if reset:
   789     if reset:
   789         hbisect.resetstate(repo)
   790         hbisect.resetstate(repo)
   790         return
   791         return
   791 
   792