--- a/mercurial/commands.py Mon Jul 04 11:20:20 2005 -0800
+++ b/mercurial/commands.py Mon Jul 04 12:15:44 2005 -0800
@@ -635,10 +635,12 @@
def log(ui, repo, f=None, **opts):
"""show the revision history of the repository or a single file"""
if f:
- filelog = repo.file(relpath(repo, [f])[0])
+ files = relpath(repo, [f])
+ filelog = repo.file(files[0])
log = filelog
lookup = filelog.lookup
else:
+ files = None
filelog = None
log = repo.changelog
lookup = repo.lookup
@@ -655,6 +657,15 @@
for i in revlist or range(log.count() - 1, -1, -1):
show_changeset(ui, repo, filelog=filelog, rev=i)
+ if opts['patch']:
+ if filelog:
+ filenode = filelog.node(i)
+ i = filelog.linkrev(filenode)
+ changenode = repo.changelog.node(i)
+ prev, other = repo.changelog.parents(changenode)
+ dodiff(sys.stdout, ui, repo, files, prev, changenode)
+ ui.write("\n")
+ ui.write("\n")
def manifest(ui, repo, rev = []):
"""output the latest or given revision of the project manifest"""
@@ -977,8 +988,9 @@
"hg import [options] <patches>"),
"^init": (init, [], 'hg init'),
"^log|history": (log,
- [('r', 'rev', [], 'revision')],
- 'hg log [-r A] [-r B] [file]'),
+ [('r', 'rev', [], 'revision'),
+ ('p', 'patch', None, 'show patch')],
+ 'hg log [-r A] [-r B] [-p] [file]'),
"manifest": (manifest, [], 'hg manifest [rev]'),
"parents": (parents, [], 'hg parents [node]'),
"^pull": (pull,