All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael J Gruber <git@drmicha.warpmail.net>
To: "Jeff King" <peff@peff.net>, "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 00/19] Add git-list-files
Date: Tue, 02 Dec 2014 13:40:05 +0100	[thread overview]
Message-ID: <547DB325.6030500@drmicha.warpmail.net> (raw)
In-Reply-To: <20141202054226.GA1948@peff.net>

Jeff King schrieb am 02.12.2014 um 06:42:
> On Sun, Nov 30, 2014 at 03:55:48PM +0700, Nguyễn Thái Ngọc Duy wrote:
> 
>> This is something else that's been sitting in my tree for a while now.
>> It adds "git list-files", intended to be aliased as "ls" with your
>> favourite display options.
> 
> When I read the subject, I thought "why isn't this called git-ls?". Then
> when I read this paragraph, I thought "if the point is for everybody to
> make their own ls alias, why do we need list-files at all, instead of
> just adding options to ls-files"?
> 
> I'll let you decide which (if any) you'd like to answer. :)
> 
> My guesses:
> 
>   1. If it were "git-ls", it would stomp on existing aliases people have
>      constructed.
> 
>   2. If it is a wrapper around ls-files, then the options may be
>      constrained; ls-files already squats on useful options like "-d"
>      (which, if we are matching traditional ls, is more like our "-t").
> 
> I somewhat feel like (1) can be mitigated by the fact that your command
> is what people were probably trying to approximate with their aliases,
> and that as porcelain it should be very configurable (so they should be
> able to accomplish the same things as their aliases). But I dunno. I do
> not have an "ls" alias, so I am biased. :)
> 
> As a side note, I wonder if it would be sensible to whitelist some
> commands as porcelain, and allow aliases to override them (either
> entirely, or just to add-in some options).
> 
> -Peff
> 

I'd like to second all that ("+1", "like").

User friendly listing of files in the git repo is dearly needed, and
following names and default behaviour of mv/cp/ls is a way to follow the
principle of least surprise.

While "ls" might be an alias for many, I'm sure "stage" was for quite a
few people, too. We should be able to take any new name for new command,
regardless of aliases people may be using.

Allowing to alias at least porcelain commands, at least to the extent of
adding default options, is something we've talked about before and which
would have prevented us from the increasing bloat by the default
changing config knobs. "git -c ..." somehow took us down the other road.

I'm still dreaming of a git future where either "git foo --bar=baz" is
equivalent to "git -c foo.bar=baz foo" (i.e. unify the naming), or we
are simply able to alias "foo" to "foo --bar=baz" if that is what we
like as default (i.e. get rid of many of the special config knobs).

Right now, we have two "sets of options" with often differing names.

Also, we could ship a few commonly used aliases (such as co=checkout,
ci=commit, st=status) which could be overriden easily.

Michael

      parent reply	other threads:[~2014-12-02 12:40 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-30  8:55 [PATCH 00/19] Add git-list-files Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 01/19] ls_colors.c: add $LS_COLORS parsing code Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 02/19] ls_colors.c: parse color.ls.* from config file Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 03/19] ls_colors.c: add a function to color a file name Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 04/19] ls_colors.c: highlight submodules like directories Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 05/19] ls-files: buffer full item in strbuf before printing Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 06/19] ls-files: add --color to highlight file names Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 07/19] ls-files: add --column Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 08/19] ls-files: support --max-depth Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 09/19] Add git-list-files, a user friendly version of ls-files and more Nguyễn Thái Ngọc Duy
2014-12-02  2:50   ` Eric Sunshine
2014-12-02 12:06     ` Duy Nguyen
2014-11-30  8:55 ` [PATCH 10/19] list-files: -u does not imply showing stages Nguyễn Thái Ngọc Duy
2014-11-30  8:55 ` [PATCH 11/19] list-files: add -R/--recursive short for --max-depth=-1 Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 12/19] list-files: add -1 short for --no-column Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 13/19] list-files: add -t back Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 14/19] list-files: sort output and remove duplicates Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 15/19] list-files: do not show duplicate cached entries Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 16/19] list-files: show directories as well as files Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 17/19] list-files: add -F/--classify Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 18/19] list-files -F: show submodules with the new indicator '&' Nguyễn Thái Ngọc Duy
2014-11-30  8:56 ` [PATCH 19/19] list-files: -M aka diff-cached Nguyễn Thái Ngọc Duy
2014-12-01 20:02 ` [PATCH 00/19] Add git-list-files Junio C Hamano
2014-12-02 11:33   ` Duy Nguyen
2014-12-02  5:42 ` Jeff King
2014-12-02 11:45   ` Duy Nguyen
2014-12-02 20:18     ` Jeff King
2014-12-02 12:40   ` Michael J Gruber [this message]

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=547DB325.6030500@drmicha.warpmail.net \
    --to=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=pclouds@gmail.com \
    --cc=peff@peff.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.