From: Duy Nguyen <pclouds@gmail.com> To: Junio C Hamano <gitster@pobox.com> Cc: git@vger.kernel.org, "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>, "Johannes Schindelin" <Johannes.Schindelin@gmx.de>, "Eric Sunshine" <sunshine@sunshineco.com>, tim@tim-landscheidt.de Subject: Re: [PATCH] gitignore.txt: elaborate shell glob syntax Date: Thu, 1 Feb 2018 16:59:15 +0700 [thread overview] Message-ID: <20180201095914.GA6939@ash> (raw) In-Reply-To: <xmqqh8r1r4u1.fsf@gitster-ct.c.googlers.com> On Wed, Jan 31, 2018 at 03:22:46PM -0800, Junio C Hamano wrote: > Nguyễn Thái Ngọc Duy <pclouds@gmail.com> writes: Argh.. stray patches strike again. It's not supposed to be in this thread but in https://public-inbox.org/git/%3C20180130101351.GA761@ash%3E/ > > > `.gitignore` file). > > > > - - Otherwise, Git treats the pattern as a shell glob suitable > > - for consumption by fnmatch(3) with the FNM_PATHNAME flag: > > - wildcards in the pattern will not match a / in the pathname. > > - For example, "Documentation/{asterisk}.html" matches > > - "Documentation/git.html" but not "Documentation/ppc/ppc.html" > > - or "tools/perf/Documentation/perf.html". > > + - Otherwise, Git treats the pattern as a shell glob: '{asterisk}' > > + matches anything except '/', '?' matches any one character except > > + '/' and '[]' matches one character in a selected range. See > > + fnmatch(3) and the FNM_PATHNAME flag for a more accurate > > + description. > > Where the original did not quote single letters at all, this uses a > pair of single quotes. Did you make sure it renders well in HTML > and manpage already or should I do that for you before applying? I didn't. I thought I didn't add any weird symbols. I was wrong. These are now wrapped as "`stuff`" to be displayed the same way as in nearby paragraphs. Verified both man and HTML pages are rendered well. > I think what you wrote is accurate enough already, and those who > want to go to fnmatch(3) would do so not for accuracy but for > authority ;-) Perhaps s/accurate/detailed/? Well there are rooms for guessing, for example "matches anything" does not tell you straight that it can match multiple characters. Anyway fixed too. -- 8< -- Subject: [PATCH v2] gitignore.txt: elaborate shell glob syntax `fnmatch(3)` is a great mention if the intended audience is programmers. For normal users it's probably better to spell out what a shell glob is. This paragraph is updated to roughly tell (or remind) what the main wildcards are supposed to do. All the details are still hidden away behind the `fnmatch(3)` wall because bringing the whole specification here may be too much. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> --- Documentation/gitignore.txt | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Documentation/gitignore.txt b/Documentation/gitignore.txt index 63260f0056..ff5d7f9ed6 100644 --- a/Documentation/gitignore.txt +++ b/Documentation/gitignore.txt @@ -102,12 +102,11 @@ PATTERN FORMAT (relative to the toplevel of the work tree if not from a `.gitignore` file). - - Otherwise, Git treats the pattern as a shell glob suitable - for consumption by fnmatch(3) with the FNM_PATHNAME flag: - wildcards in the pattern will not match a / in the pathname. - For example, "Documentation/{asterisk}.html" matches - "Documentation/git.html" but not "Documentation/ppc/ppc.html" - or "tools/perf/Documentation/perf.html". + - Otherwise, Git treats the pattern as a shell glob: "`*`" matches + anything except "`/`", "`?`" matches any one character except "`/`" + and "`[]`" matches one character in a selected range. See + fnmatch(3) and the FNM_PATHNAME flag for a more detailed + description. - A leading slash matches the beginning of the pathname. For example, "/{asterisk}.c" matches "cat-file.c" but not -- 2.16.1.205.g271f633410 -- 8< --
next prev parent reply other threads:[~2018-02-01 9:59 UTC|newest] Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-01-26 9:55 [PATCH 0/2] Add "git rebase --show-patch" Nguyễn Thái Ngọc Duy 2018-01-26 9:55 ` [PATCH 1/2] am: add --show-patch Nguyễn Thái Ngọc Duy 2018-01-26 9:55 ` [PATCH 2/2] rebase: " Nguyễn Thái Ngọc Duy 2018-01-26 11:12 ` Phillip Wood 2018-01-26 11:22 ` Duy Nguyen 2018-01-30 11:15 ` Phillip Wood 2018-01-26 19:11 ` Eric Sunshine 2018-01-27 1:42 ` Duy Nguyen 2018-01-26 18:47 ` [PATCH 0/2] Add "git rebase --show-patch" Tim Landscheidt 2018-01-27 1:45 ` Duy Nguyen 2018-01-27 11:26 ` Ævar Arnfjörð Bjarmason 2018-01-29 15:09 ` Johannes Schindelin 2018-01-30 9:10 ` Duy Nguyen 2018-01-30 12:32 ` Johannes Schindelin 2018-01-30 20:19 ` Junio C Hamano 2018-02-01 2:06 ` Tim Landscheidt 2018-01-31 9:30 ` [PATCH v2 0/3] " Nguyễn Thái Ngọc Duy 2018-01-31 9:30 ` [PATCH v2 1/3] am: add --show-current-patch Nguyễn Thái Ngọc Duy 2018-01-31 9:40 ` Eric Sunshine 2018-01-31 22:59 ` Junio C Hamano 2018-02-02 9:25 ` Duy Nguyen 2018-02-02 9:46 ` Eric Sunshine 2018-02-02 9:53 ` Duy Nguyen 2018-02-02 18:56 ` Junio C Hamano 2018-01-31 9:30 ` [PATCH] gitignore.txt: elaborate shell glob syntax Nguyễn Thái Ngọc Duy 2018-01-31 23:22 ` Junio C Hamano 2018-02-01 9:59 ` Duy Nguyen [this message] 2018-01-31 9:30 ` [PATCH v2 2/3] rebase: add --show-current-patch Nguyễn Thái Ngọc Duy 2018-01-31 9:30 ` [PATCH v2 3/3] rebase: introduce and use pseudo-ref ORIG_COMMIT Nguyễn Thái Ngọc Duy 2018-01-31 23:18 ` Junio C Hamano 2018-02-01 10:02 ` Duy Nguyen 2018-02-02 19:00 ` Junio C Hamano 2018-02-01 11:05 ` Phillip Wood 2018-02-11 9:43 ` [PATCH v3 0/3] Add "git rebase --show-current-patch" Nguyễn Thái Ngọc Duy 2018-02-11 9:43 ` [PATCH v3 1/3] am: add --show-current-patch Nguyễn Thái Ngọc Duy 2018-02-11 9:43 ` [PATCH v3 2/3] rebase: " Nguyễn Thái Ngọc Duy 2018-02-11 9:43 ` [PATCH v3 3/3] rebase: introduce and use pseudo-ref REBASE_HEAD Nguyễn Thái Ngọc Duy 2018-02-22 0:21 ` [PATCH v3 0/3] Add "git rebase --show-current-patch" Junio C Hamano 2018-02-22 0:54 ` Tim Landscheidt 2018-02-23 10:20 ` Duy Nguyen
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=20180201095914.GA6939@ash \ --to=pclouds@gmail.com \ --cc=Johannes.Schindelin@gmx.de \ --cc=avarab@gmail.com \ --cc=git@vger.kernel.org \ --cc=gitster@pobox.com \ --cc=sunshine@sunshineco.com \ --cc=tim@tim-landscheidt.de \ --subject='Re: [PATCH] gitignore.txt: elaborate shell glob syntax' \ /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
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).