Mercurial > hg > mercurial-crew-with-dirclash
comparison hgext/mq.py @ 2750:8c814c1ab31e
New self-explanatory command qrename.
author | Brendan Cully <brendan@kublai.com> |
---|---|
date | Tue, 01 Aug 2006 10:55:06 -0700 |
parents | 752b9475a700 |
children | 7d1de4545728 |
comparison
equal
deleted
inserted
replaced
2749:d13e4ffaa79d | 2750:8c814c1ab31e |
---|---|
1408 else: | 1408 else: |
1409 q = repo.mq | 1409 q = repo.mq |
1410 q.pop(repo, patch, force=opts['force'], update=localupdate, all=opts['all']) | 1410 q.pop(repo, patch, force=opts['force'], update=localupdate, all=opts['all']) |
1411 q.save_dirty() | 1411 q.save_dirty() |
1412 return 0 | 1412 return 0 |
1413 | |
1414 def rename(ui, repo, patch, name=None, **opts): | |
1415 """rename a patch | |
1416 | |
1417 With one argument, renames the current patch to PATCH1. | |
1418 With two arguments, renames PATCH1 to PATCH2.""" | |
1419 | |
1420 q = repo.mq | |
1421 | |
1422 if not name: | |
1423 name = patch | |
1424 patch = None | |
1425 | |
1426 if name in q.series: | |
1427 raise util.Abort(_('A patch named %s already exists in the series file') % name) | |
1428 | |
1429 absdest = os.path.join(q.path, name) | |
1430 if os.path.exists(absdest): | |
1431 raise util.Abort(_('%s already exists') % absdest) | |
1432 | |
1433 if patch: | |
1434 patch = q.lookup(patch) | |
1435 else: | |
1436 if not q.applied: | |
1437 ui.write(_('No patches applied\n')) | |
1438 return | |
1439 patch = q.lookup('qtip') | |
1440 | |
1441 if ui.verbose: | |
1442 ui.write('Renaming %s to %s\n' % (patch, name)) | |
1443 i = q.find_series(patch) | |
1444 q.full_series[i] = name | |
1445 q.read_series(q.full_series) | |
1446 q.series_dirty = 1 | |
1447 | |
1448 info = q.isapplied(patch) | |
1449 if info: | |
1450 q.applied[info[0]] = info[1] + ':' + name | |
1451 q.applied_dirty = 1 | |
1452 | |
1453 util.rename(os.path.join(q.path, patch), absdest) | |
1454 r = q.qrepo() | |
1455 if r: | |
1456 wlock = r.wlock() | |
1457 if r.dirstate.state(name) == 'r': | |
1458 r.undelete([name], wlock) | |
1459 r.copy(patch, name, wlock) | |
1460 r.remove([patch], False, wlock) | |
1461 | |
1462 q.save_dirty() | |
1413 | 1463 |
1414 def restore(ui, repo, rev, **opts): | 1464 def restore(ui, repo, rev, **opts): |
1415 """restore the queue state saved by a rev""" | 1465 """restore the queue state saved by a rev""" |
1416 rev = repo.lookup(rev) | 1466 rev = repo.lookup(rev) |
1417 q = repo.mq | 1467 q = repo.mq |
1550 [('e', 'edit', None, _('edit commit message')), | 1600 [('e', 'edit', None, _('edit commit message')), |
1551 ('m', 'message', '', _('change commit message with <text>')), | 1601 ('m', 'message', '', _('change commit message with <text>')), |
1552 ('l', 'logfile', '', _('change commit message with <file> content')), | 1602 ('l', 'logfile', '', _('change commit message with <file> content')), |
1553 ('s', 'short', None, 'short refresh')], | 1603 ('s', 'short', None, 'short refresh')], |
1554 'hg qrefresh [-e] [-m TEXT] [-l FILE] [-s]'), | 1604 'hg qrefresh [-e] [-m TEXT] [-l FILE] [-s]'), |
1605 'qrename': | |
1606 (rename, [], 'hg qrename PATCH1 [PATCH2]'), | |
1555 "qrestore": | 1607 "qrestore": |
1556 (restore, | 1608 (restore, |
1557 [('d', 'delete', None, 'delete save entry'), | 1609 [('d', 'delete', None, 'delete save entry'), |
1558 ('u', 'update', None, 'update queue working dir')], | 1610 ('u', 'update', None, 'update queue working dir')], |
1559 'hg qrestore [-d] [-u] REV'), | 1611 'hg qrestore [-d] [-u] REV'), |