On Wed, Mar 18 2015 at 04:29:44 AM, Sundararajan R <dyou...@gmail.com> wrote:
> Teaching reset the - shorthand involves checking if any file named '-' exists.
> check_filename() is used to perform this check.
>
> When the @{-1} branch does not exist then it can be safely assumed that the
> user is referring to the file '-',if any. If this file exists then it is 
> reset or else
> a bad flag error is shown.
>
> But if the @{-1} branch exists then it becomes ambiguous without the explicit 
> '--' disambiguation as to whether the user wants to reset the file '-' or if 
> he wants to reset the working tree to the previous branch. Hence the program 
> dies
> with a message about the ambiguous argument.
>
I might be wrong but I think any pathspec that begins with "-" needs to
be preceded by either a "--" marker or be specified as "./-filename",
else verify_filename just die. Therefore you would need to do something
like git reset ./- if you wanted to reset a file. I don't know if given
simply "-" as filename is desired since options starts with "-".

I don't know if you saw but Junio posted a while ago about about
allowing "-" as a stand-in everywhere a revision was allowed. He updated
a version on pu : "d40f108d"

> On Tue, Mar 17 2015 at 02:49:48 AM, Junio C Hamano <gits...@pobox.com> wrote:
>> Junio C Hamano <gits...@pobox.com> writes:
>>
>>      if (try to see if it is a revision or regvision range) {
>>              /* if failed ... */
>>              if (starts with '-') {
>>                      do the option thing;
>>                         continue;
>>              }
>>              /* args must be pathspecs from here on */
>>                 check the  '--' disambiguation;
>>                 add pathspec to prune-data;
>>      } else {
>>              got_rev_arg = 1;
>>      }
>>

See $gmane/265672
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to