Thread (13 messages) flat view 13 messages, 5 authors, 2016-06-15

Re: What is missing from Git v2.0

From: Felipe Contreras <hidden>
Date: 2016-06-15 23:00:46

brian m. carlson wrote:
On Mon, Apr 21, 2014 at 09:24:33PM +0200, Sebastian Schuberth wrote:
quoted
BTW, in my experience people tend to stick to predefined aliases instead of
redefining them to something (completely) different. This means that having
default aliases will very likely enable one to use the same short commands
on one's colleague's PC (instead of you running into issues because the same
alias was defined to a different command).

If we don't standardize this now people will come up with their own
definitions [1] [2] (and many others if you just search GitHub) which are
again likely to differ (slightly), hindering interoperability.
Unfortunately, that's already happened.  Some people alias ci to commit,
and some people alias it to commit -a.  There is literally no choice you
can make there that will make everyone happy.
Of course we can:
a) The people that have 'alias.co = git commit' will keep their alias
b) The people that have 'alias.co = git commit -a' will keep their alias
c) The people that haven't set alias.co, will get the default
If you provide default aliases, people will expect them to work
everywhere, and then be confused when they don't.
This argument was already brought up, and already proved to be false.

Mercurial allows not only to override the default alias, but to override the
core commands, so you can alias 'hg push' to 'hg push --force'. According to
your hypothesis people using Mercurial would get confused when basic commands
work on certain machines and not others. This is not the case. I challenge you
to find a single instance when people got confused because of the configured
aliases.
It's much better to let people alias what they want on their own.  I
understand the frustration of having to work on others' machines when they
don't have your aliases, because every time I type "git pff"[0] and it fails,
it drives me crazy, but there's just no sane defaults.
Yes there are sane defaults.

  co = checkout
  ci = commit
  rb = rebase
  st = status
  br = branch
  dt = difftool
  mt = mergetool

-- 
Felipe Contreras
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help