2497 message = opts['message'] |
2497 message = opts['message'] |
2498 if opts['remove']: |
2498 if opts['remove']: |
2499 rev_ = nullid |
2499 rev_ = nullid |
2500 if not message: |
2500 if not message: |
2501 message = _('Removed tag %s') % name |
2501 message = _('Removed tag %s') % name |
|
2502 elif name in repo.tags() and not opts['force']: |
|
2503 raise util.Abort(_('a tag named %s already exists (use -f to force)') |
|
2504 % name) |
2502 if not rev_ and repo.dirstate.parents()[1] != nullid: |
2505 if not rev_ and repo.dirstate.parents()[1] != nullid: |
2503 raise util.Abort(_('uncommitted merge - please provide a ' |
2506 raise util.Abort(_('uncommitted merge - please provide a ' |
2504 'specific revision')) |
2507 'specific revision')) |
2505 r = repo.changectx(rev_).node() |
2508 r = repo.changectx(rev_).node() |
2506 |
2509 |
2960 ('', 'rev', [], _('show difference from revision')), |
2963 ('', 'rev', [], _('show difference from revision')), |
2961 ] + walkopts, |
2964 ] + walkopts, |
2962 _('hg status [OPTION]... [FILE]...')), |
2965 _('hg status [OPTION]... [FILE]...')), |
2963 "tag": |
2966 "tag": |
2964 (tag, |
2967 (tag, |
2965 [('l', 'local', None, _('make the tag local')), |
2968 [('f', 'force', None, _('replace existing tag')), |
|
2969 ('l', 'local', None, _('make the tag local')), |
2966 ('m', 'message', '', _('message for tag commit log entry')), |
2970 ('m', 'message', '', _('message for tag commit log entry')), |
2967 ('d', 'date', '', _('record datecode as commit date')), |
2971 ('d', 'date', '', _('record datecode as commit date')), |
2968 ('u', 'user', '', _('record user as commiter')), |
2972 ('u', 'user', '', _('record user as commiter')), |
2969 ('r', 'rev', '', _('revision to tag')), |
2973 ('r', 'rev', '', _('revision to tag')), |
2970 ('', 'remove', None, _('remove a tag'))], |
2974 ('', 'remove', None, _('remove a tag'))], |