mercurial/commands.py
changeset 38152 63553c2bef7e
parent 38151 0dfa27e53c57
child 38154 decdb587ea12
equal deleted inserted replaced
38151:0dfa27e53c57 38152:63553c2bef7e
  2205         ui.warn(_('warning: inconsistent use of --rev might give unexpected '
  2205         ui.warn(_('warning: inconsistent use of --rev might give unexpected '
  2206                   'revision ordering!\n'))
  2206                   'revision ordering!\n'))
  2207 
  2207 
  2208     revs = list(revs)
  2208     revs = list(revs)
  2209     revs.extend(opts.get('rev'))
  2209     revs.extend(opts.get('rev'))
       
  2210     # a dict of data to be stored in state file
       
  2211     statedata = {}
  2210 
  2212 
  2211     if not opts.get('user') and opts.get('currentuser'):
  2213     if not opts.get('user') and opts.get('currentuser'):
  2212         opts['user'] = ui.username()
  2214         opts['user'] = ui.username()
  2213     if not opts.get('date') and opts.get('currentdate'):
  2215     if not opts.get('date') and opts.get('currentdate'):
  2214         opts['date'] = "%d %d" % dateutil.makedate()
  2216         opts['date'] = "%d %d" % dateutil.makedate()
  2328         else:
  2330         else:
  2329             extra['source'] = ctx.hex()
  2331             extra['source'] = ctx.hex()
  2330         user = ctx.user()
  2332         user = ctx.user()
  2331         if opts.get('user'):
  2333         if opts.get('user'):
  2332             user = opts['user']
  2334             user = opts['user']
       
  2335             statedata['user'] = user
  2333         date = ctx.date()
  2336         date = ctx.date()
  2334         if opts.get('date'):
  2337         if opts.get('date'):
  2335             date = opts['date']
  2338             date = opts['date']
       
  2339             statedata['date'] = date
  2336         message = ctx.description()
  2340         message = ctx.description()
  2337         if opts.get('log'):
  2341         if opts.get('log'):
  2338             message += '\n(grafted from %s)' % ctx.hex()
  2342             message += '\n(grafted from %s)' % ctx.hex()
  2339 
  2343 
  2340         # we don't merge the first commit when continuing
  2344         # we don't merge the first commit when continuing
  2350                 repo.ui.setconfig('ui', 'forcemerge', '', 'graft')
  2354                 repo.ui.setconfig('ui', 'forcemerge', '', 'graft')
  2351             # report any conflicts
  2355             # report any conflicts
  2352             if stats.unresolvedcount > 0:
  2356             if stats.unresolvedcount > 0:
  2353                 # write out state for --continue
  2357                 # write out state for --continue
  2354                 nodes = [repo[rev].hex() for rev in revs[pos:]]
  2358                 nodes = [repo[rev].hex() for rev in revs[pos:]]
  2355                 statedata = {'nodes': nodes}
  2359                 statedata['nodes'] = nodes
  2356                 stateversion = 1
  2360                 stateversion = 1
  2357                 graftstate.save(stateversion, statedata)
  2361                 graftstate.save(stateversion, statedata)
  2358                 extra = ''
  2362                 extra = ''
  2359                 if opts.get('user'):
  2363                 if opts.get('user'):
  2360                     extra += ' --user %s' % procutil.shellquote(opts['user'])
  2364                     extra += ' --user %s' % procutil.shellquote(opts['user'])