mercurial/commands.py
changeset 11371 4c8842ee97ff
parent 11353 f2b25e8ea6c1
child 11384 c04084753990
equal deleted inserted replaced
11370:db3f6f0e4e7d 11371:4c8842ee97ff
  1079                     ui.write(value, '\n')
  1079                     ui.write(value, '\n')
  1080         else:
  1080         else:
  1081             ui.debug('%s: ' %
  1081             ui.debug('%s: ' %
  1082                      ui.configsource(section, name, untrusted))
  1082                      ui.configsource(section, name, untrusted))
  1083             ui.write('%s=%s\n' % (sectname, value))
  1083             ui.write('%s=%s\n' % (sectname, value))
       
  1084 
       
  1085 def debugpushkey(ui, repopath, namespace, *keyinfo):
       
  1086     '''access the pushkey key/value protocol
       
  1087 
       
  1088     With two args, list the keys in the given namespace.
       
  1089 
       
  1090     With five args, set a key to new if it currently is set to old.
       
  1091     Reports success or failure.
       
  1092     '''
       
  1093 
       
  1094     target = hg.repository(ui, repopath)
       
  1095     if keyinfo:
       
  1096         key, old, new = keyinfo
       
  1097         r = target.pushkey(namespace, key, old, new)
       
  1098         ui.status(str(r) + '\n')
       
  1099         return not(r)
       
  1100     else:
       
  1101         for k, v in target.listkeys(namespace).iteritems():
       
  1102             ui.write("%s\t%s\n" % (k.encode('string-escape'),
       
  1103                                    v.encode('string-escape')))
  1084 
  1104 
  1085 def debugrevspec(ui, repo, expr):
  1105 def debugrevspec(ui, repo, expr):
  1086     '''parse and apply a revision specification'''
  1106     '''parse and apply a revision specification'''
  1087     if ui.verbose:
  1107     if ui.verbose:
  1088         tree = revset.parse(expr)
  1108         tree = revset.parse(expr)
  4070     "debugdata": (debugdata, [], _('FILE REV')),
  4090     "debugdata": (debugdata, [], _('FILE REV')),
  4071     "debugfsinfo": (debugfsinfo, [], _('[PATH]')),
  4091     "debugfsinfo": (debugfsinfo, [], _('[PATH]')),
  4072     "debugindex": (debugindex, [], _('FILE')),
  4092     "debugindex": (debugindex, [], _('FILE')),
  4073     "debugindexdot": (debugindexdot, [], _('FILE')),
  4093     "debugindexdot": (debugindexdot, [], _('FILE')),
  4074     "debuginstall": (debuginstall, [], ''),
  4094     "debuginstall": (debuginstall, [], ''),
       
  4095     "debugpushkey": (debugpushkey, [], _('REPO NAMESPACE [KEY OLD NEW]')),
  4075     "debugrebuildstate":
  4096     "debugrebuildstate":
  4076         (debugrebuildstate,
  4097         (debugrebuildstate,
  4077          [('r', 'rev', '',
  4098          [('r', 'rev', '',
  4078            _('revision to rebuild to'), _('REV'))],
  4099            _('revision to rebuild to'), _('REV'))],
  4079          _('[-r REV] [REV]')),
  4100          _('[-r REV] [REV]')),
  4418     "verify": (verify, []),
  4439     "verify": (verify, []),
  4419     "version": (version_, []),
  4440     "version": (version_, []),
  4420 }
  4441 }
  4421 
  4442 
  4422 norepo = ("clone init version help debugcommands debugcomplete debugdata"
  4443 norepo = ("clone init version help debugcommands debugcomplete debugdata"
  4423           " debugindex debugindexdot debugdate debuginstall debugfsinfo")
  4444           " debugindex debugindexdot debugdate debuginstall debugfsinfo"
       
  4445           " debugpushkey")
  4424 optionalrepo = ("identify paths serve showconfig debugancestor debugdag")
  4446 optionalrepo = ("identify paths serve showconfig debugancestor debugdag")