equal
deleted
inserted
replaced
453 |
453 |
454 def cat(ui, repo, file1, rev=None, **opts): |
454 def cat(ui, repo, file1, rev=None, **opts): |
455 """output the latest or given revision of a file""" |
455 """output the latest or given revision of a file""" |
456 r = repo.file(relpath(repo, [file1])[0]) |
456 r = repo.file(relpath(repo, [file1])[0]) |
457 if rev: |
457 if rev: |
458 n = r.lookup(rev) |
458 try: |
|
459 # assume all revision numbers are for changesets |
|
460 n = repo.lookup(rev) |
|
461 change = repo.changelog.read(n) |
|
462 m = repo.manifest.read(change[0]) |
|
463 n = m[relpath(repo, [file1])[0]] |
|
464 except hg.RepoError, KeyError: |
|
465 n = r.lookup(rev) |
459 else: |
466 else: |
460 n = r.tip() |
467 n = r.tip() |
461 fp = make_file(repo, r, opts['output'], node=n) |
468 fp = make_file(repo, r, opts['output'], node=n) |
462 fp.write(r.read(n)) |
469 fp.write(r.read(n)) |
463 |
470 |