Mercurial > hg
changeset 4894:be5dc5e3ab2d
hg parents: don't pass an OS-specific path to repo.filectx
The only reason to use the matcher code instead of calling util.canonpath
directly is to be able to use "path:canonical/path/to/file" patterns.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Tue, 17 Jul 2007 09:08:29 -0300 |
parents | 931f901ab811 |
children | fa6c9381d053 |
files | mercurial/commands.py tests/test-parents tests/test-parents.out |
diffstat | 3 files changed, 39 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Sun Jul 15 14:43:38 2007 -0500 +++ b/mercurial/commands.py Tue Jul 17 09:08:29 2007 -0300 @@ -1978,7 +1978,10 @@ """ rev = opts.get('rev') if file_: - ctx = repo.filectx(file_, changeid=rev) + files, match, anypats = cmdutil.matchpats(repo, (file_,), opts) + if anypats or len(files) != 1: + raise util.Abort(_('can only specify an explicit file name')) + ctx = repo.filectx(files[0], changeid=rev) elif rev: ctx = repo.changectx(rev) else:
--- a/tests/test-parents Sun Jul 15 14:43:38 2007 -0500 +++ b/tests/test-parents Tue Jul 17 09:08:29 2007 -0300 @@ -1,8 +1,8 @@ #!/bin/sh # test parents command -hg init a -cd a +hg init repo +cd repo echo % no working directory hg parents @@ -25,3 +25,20 @@ echo % hg parents -r 2 a hg parents -r 2 a + +echo % hg parents -r 2 ../a +hg parents -r 2 ../a + +echo '% cd dir; hg parents -r 2 ../a' +mkdir dir +cd dir +hg parents -r 2 ../a + +echo '% hg parents -r 2 path:a' +hg parents -r 2 path:a + +echo '% hg parents -r 2 glob:a' +cd .. +hg parents -r 2 glob:a + +true
--- a/tests/test-parents.out Sun Jul 15 14:43:38 2007 -0500 +++ b/tests/test-parents.out Tue Jul 17 09:08:29 2007 -0300 @@ -26,3 +26,19 @@ date: Thu Jan 01 00:00:00 1970 +0000 summary: ab +% hg parents -r 2 ../a +abort: ../a not under root +% cd dir; hg parents -r 2 ../a +changeset: 0:b6a1406d8886 +user: test +date: Thu Jan 01 00:00:00 1970 +0000 +summary: ab + +% hg parents -r 2 path:a +changeset: 0:b6a1406d8886 +user: test +date: Thu Jan 01 00:00:00 1970 +0000 +summary: ab + +% hg parents -r 2 glob:a +abort: can only specify an explicit file name