comparison mercurial/commands.py @ 553:f2442a6a5893

Merge with TAH -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Merge with TAH manifest hash: b8ea5be49794773eeb6b8beb712a7c1bd9ed1e9b -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCxPqMywK+sNU5EO8RAn62AJ9nmqCKGck8T4E90V+jljRV56hcHwCff0Co jTfrJT1oJrGRgd6VE/B4hKc= =8nW7 -----END PGP SIGNATURE-----
author mpm@selenic.com
date Fri, 01 Jul 2005 00:10:52 -0800
parents 92b60cabf808 2204311609a0
children 2f515dcfbc24
comparison
equal deleted inserted replaced
551:b460a2fd8bb7 553:f2442a6a5893
513 if source: 513 if source:
514 ui.warn("no longer supported: use \"hg clone\" instead\n") 514 ui.warn("no longer supported: use \"hg clone\" instead\n")
515 sys.exit(1) 515 sys.exit(1)
516 repo = hg.repository(ui, ".", create=1) 516 repo = hg.repository(ui, ".", create=1)
517 517
518 def log(ui, repo, f = None): 518 def log(ui, repo, f=None, **opts):
519 """show the revision history of the repository or a single file""" 519 """show the revision history of the repository or a single file"""
520 if f: 520 if f:
521 f = relpath(repo, [f])[0] 521 filelog = repo.file(relpath(repo, [f])[0])
522 r = repo.file(f) 522 log = filelog
523 for i in range(r.count() - 1, -1, -1): 523 lookup = filelog.lookup
524 show_changeset(ui, repo, filelog=r, rev=i) 524 else:
525 else: 525 filelog = None
526 for i in range(repo.changelog.count() - 1, -1, -1): 526 log = repo.changelog
527 show_changeset(ui, repo, rev=i) 527 lookup = repo.lookup
528 revlist = []
529 revs = [log.rev(lookup(rev)) for rev in opts['rev']]
530 while revs:
531 if len(revs) == 1:
532 revlist.append(revs.pop(0))
533 else:
534 a = revs.pop(0)
535 b = revs.pop(0)
536 off = a > b and -1 or 1
537 revlist.extend(range(a, b + off, off))
538 for i in revlist or range(log.count() - 1, -1, -1):
539 show_changeset(ui, repo, filelog=filelog, rev=i)
528 540
529 def manifest(ui, repo, rev = []): 541 def manifest(ui, repo, rev = []):
530 """output the latest or given revision of the project manifest""" 542 """output the latest or given revision of the project manifest"""
531 n = repo.manifest.tip() 543 n = repo.manifest.tip()
532 if rev: 544 if rev:
763 "import|patch": (import_, 775 "import|patch": (import_,
764 [('p', 'strip', 1, 'path strip'), 776 [('p', 'strip', 1, 'path strip'),
765 ('b', 'base', "", 'base path')], 777 ('b', 'base', "", 'base path')],
766 "hg import [options] <patches>"), 778 "hg import [options] <patches>"),
767 "init": (init, [], 'hg init'), 779 "init": (init, [], 'hg init'),
768 "log|history": (log, [], 'hg log [file]'), 780 "log|history": (log,
781 [('r', 'rev', [], 'revision')],
782 'hg log [-r A] [-r B] [file]'),
769 "manifest": (manifest, [], 'hg manifest [rev]'), 783 "manifest": (manifest, [], 'hg manifest [rev]'),
770 "parents": (parents, [], 'hg parents [node]'), 784 "parents": (parents, [], 'hg parents [node]'),
771 "pull": (pull, 785 "pull": (pull,
772 [('u', 'update', None, 'update working directory')], 786 [('u', 'update', None, 'update working directory')],
773 'hg pull [options] [source]'), 787 'hg pull [options] [source]'),