Mercurial > public > mercurial-scm > hg
comparison mercurial/commands.py @ 5300:81575b7b505e
Merge with crew-stable
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Tue, 11 Sep 2007 23:38:29 +0200 |
parents | d59ed18ec2d0 cba2a689117d |
children | ba3dc7883968 |
comparison
equal
deleted
inserted
replaced
5297:ec061aaa25a4 | 5300:81575b7b505e |
---|---|
1974 will be printed. If a file argument is given, revision in | 1974 will be printed. If a file argument is given, revision in |
1975 which the file was last changed (before the working directory | 1975 which the file was last changed (before the working directory |
1976 revision or the argument to --rev if given) is printed. | 1976 revision or the argument to --rev if given) is printed. |
1977 """ | 1977 """ |
1978 rev = opts.get('rev') | 1978 rev = opts.get('rev') |
1979 if rev: | |
1980 ctx = repo.changectx(rev) | |
1981 else: | |
1982 ctx = repo.workingctx() | |
1983 | |
1979 if file_: | 1984 if file_: |
1980 files, match, anypats = cmdutil.matchpats(repo, (file_,), opts) | 1985 files, match, anypats = cmdutil.matchpats(repo, (file_,), opts) |
1981 if anypats or len(files) != 1: | 1986 if anypats or len(files) != 1: |
1982 raise util.Abort(_('can only specify an explicit file name')) | 1987 raise util.Abort(_('can only specify an explicit file name')) |
1983 ctx = repo.filectx(files[0], changeid=rev) | 1988 file_ = files[0] |
1984 elif rev: | 1989 filenodes = [] |
1985 ctx = repo.changectx(rev) | 1990 for cp in ctx.parents(): |
1991 if not cp: | |
1992 continue | |
1993 try: | |
1994 filenodes.append(cp.filenode(file_)) | |
1995 except revlog.LookupError: | |
1996 pass | |
1997 if not filenodes: | |
1998 raise util.Abort(_("'%s' not found in manifest!") % file_) | |
1999 fl = repo.file(file_) | |
2000 p = [repo.lookup(fl.linkrev(fn)) for fn in filenodes] | |
1986 else: | 2001 else: |
1987 ctx = repo.workingctx() | 2002 p = [cp.node() for cp in ctx.parents()] |
1988 p = [cp.node() for cp in ctx.parents()] | |
1989 | 2003 |
1990 displayer = cmdutil.show_changeset(ui, repo, opts) | 2004 displayer = cmdutil.show_changeset(ui, repo, opts) |
1991 for n in p: | 2005 for n in p: |
1992 if n != nullid: | 2006 if n != nullid: |
1993 displayer.show(changenode=n) | 2007 displayer.show(changenode=n) |