git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michael J Gruber <git@drmicha.warpmail.net>
To: Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Cc: Sverre Rabbelier <srabbelier@gmail.com>,
	Junio C Hamano <gitster@pobox.com>,
	git@vger.kernel.org
Subject: Re: [PATCH/alternative/raw and rough] setup.c: denote repo wide pathspecs by ':'
Date: Wed, 02 Mar 2011 14:12:38 +0100	[thread overview]
Message-ID: <4D6E4246.5080407@drmicha.warpmail.net> (raw)
In-Reply-To: <AANLkTimPGxzP+XfX8Ng5U_4UnPWZCFLQ-3rP4oPTE3o+@mail.gmail.com>

Nguyen Thai Ngoc Duy venit, vidit, dixit 02.03.2011 13:57:
> On Wed, Mar 2, 2011 at 7:34 PM, Sverre Rabbelier <srabbelier@gmail.com> wrote:
>> Heya,
>>
>> On Tue, Mar 1, 2011 at 16:01, Michael J Gruber <git@drmicha.warpmail.net> wrote:
>>> I have to say I'm really excited about how transparently this works
>>> across all kinds of commands, and how suggestive this is with rev:path
>>> in mind.
>>
>> I like it, especially considering how small the impact on the codebase
>> is. The downside is (once again) backwards compatibility though, I
>> haven't heard much on how to address that, other than "just quote it"
>> (which _I_ think is fine, people with filenames that start with fancy
>> characters are probably used to quoting them anyway)
> 
> Yeah. And if this is accepted, the "git add -u (without dot)" issue
> may cool down. I personally don't mind typing "git add -u :" (or "git
> add -u :/").

Why not even ":)"

Seriously, I'm glad this is gaining support. As for the notation, I
tried to take several things into account, which is only possible by
compromising somewhat on some:

- usability (as short as possible - 1 char optimum, 2 at most)

- suggestiveness, e.g. ":path" like in "rev:path" in line with git
usage, or "/path" in line with unix usage (although this has the wrong
connotation of being anchored at root)

- backward compatibility (new code does not misinterpret old notation)

- msysgit compatibility (I think "/" has issues)

- disambiguation from other notation (notably rev:path)

I ended up compromising slightly on the last one. Note that this does
not introduce additional ambiguities for existing use cases[*], only for
the new notation, i.e. commands expecting "treeish pathspec" need a
helping double dash when they are feed the new :pathspec without a treeish.

Michael

[*] I keep forgetting that some people may have files whose names begin
with ":". They are ambiguous now already with "treeish pathspec"
commands, but not with "pathspec" commands. The latter would change.

  reply	other threads:[~2011-03-02 13:16 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-28  0:17 git-grep to operate across who repository and not just CWD? David Chanters
2011-02-28  9:27 ` Michael J Gruber
2011-02-28 15:27   ` Jay Soffian
2011-02-28 18:32     ` Junio C Hamano
2011-02-28 18:38       ` Junio C Hamano
2011-02-28 22:25   ` Phil Hord
2011-03-01  8:05     ` Michael J Gruber
2011-03-01  8:16       ` Nguyen Thai Ngoc Duy
2011-03-01  8:54         ` Michael J Gruber
2011-03-01  9:32           ` Nguyen Thai Ngoc Duy
2011-03-01  9:44             ` Nguyen Thai Ngoc Duy
2011-03-01  9:53               ` [PATCH/POC 0/2] grep --full-tree Michael J Gruber
2011-03-01  9:53                 ` [PATCH/RFC 1/2] grep: --full-tree Michael J Gruber
2011-03-01  9:53                 ` [PATCH/RFC 2/2] grep: make --full-tree work with pathspecs Michael J Gruber
2011-03-01 19:20                   ` Junio C Hamano
2011-03-01 10:21               ` [PATCH/alternative/raw and rough] setup.c: denote repo wide pathspecs by ':' Michael J Gruber
2011-03-01 11:13                 ` Nguyen Thai Ngoc Duy
2011-03-01 11:16                   ` Michael J Gruber
2011-03-01 11:50                     ` Nguyen Thai Ngoc Duy
2011-03-01 11:57                       ` Michael J Gruber
2011-03-01 12:08                         ` Nguyen Thai Ngoc Duy
2011-03-01 14:50                           ` Junio C Hamano
2011-03-01 15:01                             ` Michael J Gruber
2011-03-01 20:00                               ` Junio C Hamano
2011-03-02 12:34                               ` Sverre Rabbelier
2011-03-02 12:57                                 ` Nguyen Thai Ngoc Duy
2011-03-02 13:12                                   ` Michael J Gruber [this message]
2011-03-02 16:53                                     ` Junio C Hamano
2011-03-02 17:31                                       ` Michael J Gruber
2011-03-03  2:42                                         ` Miles Bader
2011-03-03  3:52                                           ` Junio C Hamano
2011-03-03  3:44                                       ` Phil Hord
2011-03-03  8:20                                         ` Michael J Gruber
2011-03-01 16:25                             ` Phil Hord
2011-03-01 18:31                             ` James Pickens
2011-03-02  0:12                     ` Nguyen Thai Ngoc Duy
2011-03-03  3:51                       ` Phil Hord
2011-03-03  8:21                         ` Michael J Gruber
2011-03-01 11:49                 ` Michael J Gruber
2011-03-01 13:05                   ` Phil Hord
2011-03-23 15:32                 ` [PATCH] pathspec: reserve some letters after a colon pathspec Nguyễn Thái Ngọc Duy
2011-03-23 18:04                   ` Junio C Hamano
2011-03-24  7:15                     ` Michael J Gruber
2011-03-24  7:49                       ` Nguyen Thai Ngoc Duy
2011-03-24  8:12                         ` Junio C Hamano
2011-03-24 14:46                       ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4D6E4246.5080407@drmicha.warpmail.net \
    --to=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=pclouds@gmail.com \
    --cc=srabbelier@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).