git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Proposal: "unadd" command / alias.

From
Philip Oakley <philipoakley@iee.email>
Date
Oct 28, 2020, 11:00 UTC
Message-ID
<126f0324-2d5b-c2a9-b1ca-aa92909b6fde@iee.email>
In-Reply-To
<CAAdniQ7o2greovkG-RP-FLwW2OH3YuiORwB+QKgqy=_0aJ4XkQ@mail.gmail.com>
On 27/10/2020 23:14, Filipp Bakanov wrote:
Show 6 quoted lines
> It's the matter of UX. If many users have to make an alias for the
> same unclear command, at least it's a point to think about making this
> particular command more convenient. As far as I remember, some aliases
> were already added to git by default.
> What's bad with adding a popular (among many users) aliases, if they
> improve UX and make life easier?

One option maybe to curate a few of the more popular aliases within a contrib/aliases file/directory.

Not sure how best to add comments into the alias file so folks can remember what they are really meant to do, or where they copied them from.

Philip
Show 79 quoted lines
>
> On Wed, 28 Oct 2020 at 01:54, Theodore Y. Ts'o <tytso@mit.edu> wrote:
>> On Wed, Oct 28, 2020 at 01:02:11AM +0300, Filipp Bakanov wrote:
>>>>> Indeed, I have a similar alias in my ~/.gitconfig
>>> Why not just add it to git by default for everybody? revert-file is
>>> also ok, anything except `checkout HEAD --` will be good.
>> Because everyone may have their own favorite aliases?  Just because
>> *I* have the following aliases doesn't mean that everyone else would
>> find them useful.
>>
>> [alias]
>>         new = !gitk --all --not ORIG_HEAD
>>         dw = diff --stat --summary
>>         di = diff --stat --summary --cached
>>         dc = describe --contains
>>         revert-file = checkout HEAD --
>>         l  = log --pretty=format:'%Cred%h%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit
>>         lr = log --reverse --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit
>>         rl  = log -g --pretty=format:'%Cred%h%Creset %gd %gs %Cgreen(%gr)%Creset %s' --abbrev-commit
>>         rl1  = log -g --date=relative --pretty=format:'%Cred%h%Creset %gs %Cgreen%gd%Creset %s' --abbrev-commit
>>         lg  = log --graph --pretty=format:'%Cred%h%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit
>>         lgt = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit
>>         rlt = log -g --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit
>>         lgt-nc = log --graph --pretty=format:'%h -%d %s (%cr)' --abbrev-commit
>>         st = status -s
>>         recent = for-each-ref --count=15 --sort=-committerdate refs/heads/ --format='%(committerdate:short) %(refname:short)'
>>         gerrit-clone = !bash ggh gerrit-clone
>>         start = !bash ggh start
>>         upload = !bash ggh upload
>>         prune-branches = !bash ggh prune-branches
>>         fixes = log -1 --pretty=fixes
>>
>> I have a huge number of bash aliases, and that doesn't mean everyone
>> else should have those bash aliases.  For that matter, I have the
>> following in ~/bin/git-rp-ext4 so that I can type "git rp-ext4
>> tags/ext4_for_linus".  But that doesn't mean this script is right for
>> everyone....
>>
>> Cheers,
>>
>>                                         - Ted
>>
>> #!/bin/sh
>>
>> START=origin
>> URL=git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git
>> END=""
>>
>> print_help ()
>> {
>>     PROG=$(basename "$0")
>>     echo "Usage: $PROG [-n] [--start <START COMMIT>] [--url <URL] [<END COMMIT>]"
>>     exit 1
>> }
>>
>> while [ "$1" != "" ]; do
>>     case $1 in
>>         --start) shift
>>                  START="$1"
>>                  ;;
>>         --url) shift
>>                URL="$1"
>>                ;;
>>         -n) NO_ACTION="echo" ;;
>>         -*) print_help ;;
>>         *)
>>             if test -n "$END"
>>             then
>>                 print_help
>>             else
>>                 END="$1"
>>             fi
>>             ;;
>>     esac
>>     shift
>> done
>>
>> $NO_ACTION git request-pull "$START" "$URL" "$END"
>>
Previous: Filipp BakanovNext: Pratyush Yadav
Message 7 of 12 in “Proposal: "unadd" command / alias.”
  1. Filipp BakanovOct 27, 2020
  2. Junio C HamanoOct 27, 2020
  3. Theodore Y. Ts'oOct 27, 2020
  4. Filipp BakanovOct 27, 2020
  5. Theodore Y. Ts'oOct 27, 2020
  6. Filipp BakanovOct 27, 2020
  7. Philip OakleyOct 28, 2020
  8. Pratyush YadavOct 28, 2020
  9. Filipp BakanovOct 28, 2020
  10. Junio C HamanoOct 28, 2020
  11. Konstantin TokarevOct 28, 2020
  12. Filipp BakanovOct 28, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.