From: Felipe Contreras <felipe.contreras@gmail.com>
To: Duy Nguyen <pclouds@gmail.com>
Cc: "Git Mailing List" <git@vger.kernel.org>,
"Junio C Hamano" <gitster@pobox.com>,
"SZEDER Gábor" <szeder.dev@gmail.com>
Subject: Re: [PATCH 13/14] completion: add default options
Date: Fri, 21 Jun 2019 23:36:28 -0500 [thread overview]
Message-ID: <CAMP44s0+OoqhXHX1BD7Gw-0GqgyKYPw4GzhNr9n2pOfxjWcMYg@mail.gmail.com> (raw)
In-Reply-To: <CACsJy8AATA-7Z+HsA80NQ2j4Z9JeuSYXiBZLi=7FopzfLY1R+w@mail.gmail.com>
On Fri, Jun 21, 2019 at 10:02 PM Duy Nguyen <pclouds@gmail.com> wrote:
>
> On Sat, Jun 22, 2019 at 5:31 AM Felipe Contreras
> <felipe.contreras@gmail.com> wrote:
> >
> > Versions of Git older than v2.17 don't know about
> > --git-completion-helper, so provide some defaults for them.
> >
> > Also, some commands fail if there's no Git repository available.
> >
> > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> > ---
> > contrib/completion/git-completion.bash | 97 +++++++++++++++++++++++++-
> > t/t9902-completion.sh | 4 +-
> > 2 files changed, 98 insertions(+), 3 deletions(-)
> >
> > diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
> > index d3ee6c7dc2..922ba5f925 100644
> > --- a/contrib/completion/git-completion.bash
> > +++ b/contrib/completion/git-completion.bash
> > @@ -377,6 +377,100 @@ else
> > unset $(compgen -v __gitcomp_builtin_)
> > fi
> >
> > +__gitcomp_builtin_add_default=" --dry-run --verbose --interactive --patch --edit --force --update --renormalize --intent-to-add --all --ignore-
> removal --refresh --ignore-errors --ignore-missing --chmod=
> --no-dry-run -- --no-verbose --no-interactive --no-patch --no-edit
> --no-force --no-update --no-renormalize --no-intent-to-add --no-all
> --no-ignore-removal --no-refresh --no-ignore-errors
> --no-ignore-missing --no-chmod"
>
> And who's going to keep these uptodate?
The same people that kept them up-to-date before git-completion-helper.
> If you do this, might as well delete --git-completion-helper
They serve two different purposes. Say you install the completion of
Git v2.22, but a while later you have Git v2.25; you will get the
updated commands thanks to git-completion-helper, and all the
__gitcomp_builtin_*_default will be ignored.
Granted; that's not the typical situation, as many people get the Git
completion through their distribution in tandem with their Git
version. But remember that these completion scripts are part of
contrib; they are not part of official Git (`make install` doesn't
install them).
When a) most people have a version of git that has
git-completion-helper, and b) most of the issues running commands
outside of a Git repo are resolved, they could be removed. But right
now they do serve a purpose.
> A more acceptable option might be regenerate git-completion.bash and
> run --git-completion-helper to generate these, or make
> git-completion.bash source a generated file. But that might need some
> more build infrastructure, and people who just one to copy the file
> might not like it.
Indeed, I wrote a script to generate these, but I manually copied
them. I could write a script that automatically generates this file if
it's agreed that this is indeed the way we want to go.
But even if these were not up-to-date--as historically has been the
case for most options--and a) you are running a version of Git that
doesn't have git-completion-helper, or b) you run a command that
requires a Git repo; it's better to get outdated options than to get
*nothing*, which is what we get now.
Cheers.
--
Felipe Contreras
next prev parent reply other threads:[~2019-06-22 4:38 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-21 22:30 [PATCH 00/14] completion: a bunch of updates Felipe Contreras
2019-06-21 22:30 ` [PATCH 01/14] completion: zsh: fix __gitcomp_direct() Felipe Contreras
2019-06-22 15:03 ` Felipe Contreras
2019-06-21 22:30 ` [PATCH 02/14] completion: zsh: fix for directories with spaces Felipe Contreras
2019-06-21 22:30 ` [PATCH 03/14] completion: remove zsh hack Felipe Contreras
2019-06-21 22:30 ` [PATCH 04/14] completion: zsh: improve main function selection Felipe Contreras
2019-06-21 22:30 ` [PATCH 05/14] completion: prompt: fix color for Zsh Felipe Contreras
2019-06-21 22:30 ` [PATCH 06/14] completion: bash: cleanup cygwin check Felipe Contreras
2019-06-21 22:31 ` [PATCH 07/14] completion: zsh: update installation instructions Felipe Contreras
2019-06-21 22:31 ` [PATCH 08/14] completion: bash: remove old compat wrappers Felipe Contreras
2019-06-21 22:31 ` [PATCH 09/14] completion: bash: remove zsh wrapper Felipe Contreras
2019-06-21 22:31 ` [PATCH 10/14] completion: zsh: trivial cleanups Felipe Contreras
2019-06-21 22:31 ` [PATCH 11/14] test: completion: tests for __gitcomp regression Felipe Contreras
2019-07-03 17:38 ` Junio C Hamano
2019-07-03 17:49 ` SZEDER Gábor
2019-06-21 22:31 ` [PATCH 12/14] test: completion: use global config Felipe Contreras
2019-07-03 17:22 ` Junio C Hamano
2019-06-21 22:31 ` [PATCH 13/14] completion: add default options Felipe Contreras
2019-06-22 3:01 ` Duy Nguyen
2019-06-22 4:36 ` Felipe Contreras [this message]
2019-06-24 17:22 ` Junio C Hamano
2019-06-25 1:38 ` Felipe Contreras
2019-06-25 3:32 ` Duy Nguyen
2019-06-21 22:31 ` [PATCH 14/14] completion: add default merge strategies Felipe Contreras
2019-06-24 17:23 ` Junio C Hamano
2019-06-25 1:11 ` Felipe Contreras
2019-06-25 1:43 ` Junio C Hamano
2019-07-03 17:14 ` SZEDER Gábor
2019-07-03 17:50 ` [PATCH 00/14] completion: a bunch of updates Junio C Hamano
2019-07-03 19:06 ` SZEDER Gábor
2020-10-25 3:51 ` Felipe Contreras
2020-10-25 3:46 ` Felipe Contreras
2020-10-27 20:23 ` Junio C Hamano
2020-10-27 22:19 ` Felipe Contreras
2020-10-27 23:32 ` Junio C Hamano
2020-10-28 0:06 ` Felipe Contreras
2020-10-28 9:09 ` Stefan Haller
2020-10-28 16:31 ` Felipe Contreras
2020-10-28 17:34 ` Stefan Haller
2020-10-29 17:16 ` Junio C Hamano
2020-10-29 17:27 ` Junio C Hamano
2020-11-02 20:18 ` Felipe Contreras
2020-11-03 1:49 ` Junio C Hamano
2020-11-04 0:09 ` Felipe Contreras
2020-11-04 18:08 ` Junio C Hamano
2020-11-05 1:09 ` Felipe Contreras
2020-11-05 22:09 ` Junio C Hamano
2020-10-30 8:01 ` Stefan Haller
2020-10-30 17:19 ` Junio C Hamano
2020-11-02 20:29 ` Felipe Contreras
2020-11-02 23:05 ` Aaron Schrab
2020-11-03 1:35 ` Junio C Hamano
2020-11-03 23:46 ` Felipe Contreras
2020-11-03 22:37 ` Felipe Contreras
2020-11-03 9:59 ` Stefan Haller
2020-11-03 17:12 ` Junio C Hamano
2020-11-03 20:07 ` Stefan Haller
2020-11-02 19:18 ` Felipe Contreras
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAMP44s0+OoqhXHX1BD7Gw-0GqgyKYPw4GzhNr9n2pOfxjWcMYg@mail.gmail.com \
--to=felipe.contreras@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=pclouds@gmail.com \
--cc=szeder.dev@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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).