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

Re: default aliases (ci, di, st, co)

From
Ondrej Certik <ondrej@certik.cz>
Date
Jul 12, 2009, 05:07 UTC
Message-ID
<85b5c3130907112207x74449b12qcff25b96711c42e1@mail.gmail.com>
In-Reply-To
<20090709085837.GA12348@bit.office.eurotux.com>

On Thu, Jul 9, 2009 at 2:58 AM, Luciano Miguel Ferreira Rocha<luciano@eurotux.com> wrote:

Show 33 quoted lines
> On Thu, Jul 09, 2009 at 09:00:30AM +0200, Andreas Ericsson wrote:
>>  Ondrej Certik wrote:
>> > Hi,
>> > coming to git from mercurial and svn, here is the alias part of my
>> > .gitconfig:
>> > [alias]
>> >     ci = commit
>> >     di = diff --color-words
>> >     st = status
>> >     co = checkout
>> > And all is fine until I share commands to checkout my branch (for
>> > example) with other people, then basically I have to write those
>> > commands in full (e.g. commit, checkout, ...), since I cannot assume
>> > they have their .gitconfig setup the same way I do. Especially for
>> > people who are new to git.
>> > What is the view on this in the git community?
>>
>>
>>  Personally I think "plain" aliases like you use above are evil.
>>  git is not svn or mercurial. If you use it like svn you'll be
>>  surprised sooner or later and your workflow will feel awkward or
>>  just plain wrong. hg and git are very similar, but the fact that
>>  hg assumed the svn shorthands implies to me that they've tried
>>  to retain a compatibility that does not, in fact, exist.
>
> No, it just means that shorting common commands is useful and common.
>
>>  I have no simple aliases for any of the commands. There's just no reason
>>  for them since tab completion works so well.
>
> "Intelligent" bash completion always gets in my way, so I can't use it.
>
> I vote yes.

Thanks everyone for contributing to the discussion. So it seems that most people are against such aliases.

I only want to correct one thing --- I use git exactly because it's not svn and exactly because it's not mercurial, things like git branches, git remote branches, rebase -i, are still truly unique, and in my experience once one tries it, he never wants to come back.

That said, I do use "git ci" and "git st" very often and I don't think it infers any kind of workflow. TAB completion doesn't help, because I need to write "git stat<TAB>", e.g. I save exactly one letter., commit is better, there I just need "git com<TAB>", but I am still faster with my aliases. Maybe "git co" is nasty, but I never had any problems with that either.

Ondrej
Previous: Luciano Miguel Ferreira RochaNext: Graeme Geldenhuys
Message 15 of 19 in “default aliases (ci, di, st, co)”
  1. Ondrej CertikJul 8, 2009
  2. Jakub NarebskiJul 9, 2009
  3. Graeme GeldenhuysJul 9, 2009
  4. Junio C HamanoJul 9, 2009
  5. Paolo BonziniJul 9, 2009
  6. Jeff KingJul 13, 2009
  7. Jeff KingJul 13, 2009
  8. Paolo BonziniJul 13, 2009
  9. Andreas EricssonJul 9, 2009
  10. Michael J GruberJul 9, 2009
  11. Graeme GeldenhuysJul 9, 2009
  12. Jakub NarebskiJul 9, 2009
  13. Michael J GruberJul 9, 2009
  14. Luciano Miguel Ferreira RochaJul 9, 2009
  15. Ondrej CertikJul 12, 2009
  16. Graeme GeldenhuysJul 9, 2009
  17. Matthieu MoyJul 9, 2009
  18. wsfix aliasAndreas Ericsson, Jul 9, 2009
  19. Larry D'AnnaJul 9, 2009

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.