##// END OF EJS Templates
Don't mark files with 'm'erge unless we're actually merging branches...
Don't mark files with 'm'erge unless we're actually merging branches For 3-way merges, we were marking files as 'm', which should only be used for branch merges. This was causing files to show up in 'hg status' that aren't actually modified.

File last commit:

r667:31a9aa89 default
r764:eea96285 default
Show More
fancyopts.py
27 lines | 765 B | text/x-python | PythonLexer
import getopt
def fancyopts(args, options, state):
long=[]
short=''
map={}
dt={}
for s, l, d, c in options:
map['-'+s] = map['--'+l]=l
state[l] = d
dt[l] = type(d)
if not d is None and not callable(d): s, l=s+':', l+'='
if s: short = short + s
if l: long.append(l)
opts, args = getopt.getopt(args, short, long)
for opt, arg in opts:
if dt[map[opt]] is type(fancyopts): state[map[opt]](state,map[opt],arg)
elif dt[map[opt]] is type(1): state[map[opt]] = int(arg)
elif dt[map[opt]] is type(''): state[map[opt]] = arg
elif dt[map[opt]] is type([]): state[map[opt]].append(arg)
elif dt[map[opt]] is type(None): state[map[opt]] = 1
return args