On Wed, 22 Nov 2017, Kevin Daudt wrote:
> On Wed, Nov 22, 2017 at 06:19:23AM -0500, Robert P. J. Day wrote:
> > On Wed, 22 Nov 2017, Junio C Hamano wrote:
> >
> > > "Robert P. J. Day" <[email protected]> writes:
> > >
> > > > git repo with a file called "Gemfile", so i created a branch called
> > > > "Gemfile", and when i ran:
> > > >
> > > > $ git checkout Gemfile
> > > >
> > > > git switched to the branch. so even with the ambiguity, git
> > > > obviously has some sort of precedence order it checks. so what are
> > > > the rules here?
> > >
> > > 31b83f36 ("Merge branch 'nd/checkout-disambiguation'", 2016-09-26)
> > > should have made it clear that the "checkout" command has a
> > > convenience special case.
> >
> > ok, then i'm still curious about git examples that actually fail due
> > to an inability to disambiguate.
> >
> > rday
>
> Here is an example with git diff
>
> $ git init git-disambiguate
> $ cd git-disambiguate
> $ echo 1 >foo && git add foo && git commit -m foo
> $ git branch foo
> $ echo 2 >>foo && git add foo && git commit -m foo2
> $ echo 3 >>foo
>
> $ git diff foo
> fatal: ambiguous argument 'foo': both revision and filename
> Use '--' to separate paths from revisions, like this:
> 'git <command> [<revision>...] -- [<file>...]'
>
> $ git diff HEAD foo
> fatal: ambiguous argument 'foo': both revision and filename
> Use '--' to separate paths from revisions, like this:
> 'git <command> [<revision>...] -- [<file>...]'
>
> $ git diff HEAD -- foo
> diff --git a/foo b/foo
> index 1191247..01e79c3 100644
> --- a/foo
> +++ b/foo
> @@ -1,2 +1,3 @@
> 1
> 2
> +3
>
> $ git diff HEAD foo --
> diff --git a/foo b/foo
> index 1191247..d00491f 100644
> --- a/foo
> +++ b/foo
> @@ -1,2 +1 @@
> 1
> -2
fair enough, i'll go back and reword to refer to actual
disambiguation errors.
rday
--
========================================================================
Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca
Twitter: http://twitter.com/rpjday
LinkedIn: http://ca.linkedin.com/in/rpjday
========================================================================