On 03-Jul-2021, at 04:19, Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote: > > [...] > Other than that, it's fair to say that *everyone* needs some command > aliases to use git. This past month shell completions have saved me, but > not completely. I can't imagine how a newcomer must feel using git > without any alias. TLDR: I don't think young, first-time learners of Git would mind the lack of aliases. I cannot speak for people coming from other VCS's. ------ Long Version ------- Hi, maybe I can help bring some perspective on how newcomers view and use Git. I help run an Open Source club in my University, and one of the first things we help a lot of new contributors with is teaching Git. I have conducted multiple workshops over the last two years, so I have some idea of what the usual struggles and pain points are. I also have some recollection of what it's like being a new user. Most of these new users have never used any kind of VCS before, so half the problem is the overload of all these new concepts of branches, checking out, staging area, committing, pushing, pulling, etc. Users are not able to properly map the name of these commands with what it actually does. Most of the issues stem from trying to memorise these commands as a series of mantras and applying them without knowing what is actually happening. Users are confused about why there is an "add", and then a "commit". It seems conceptually similar to them. The difference between reset, restore, revert (and even rebase) is also a pain point, because those words sound very similar. Combine the lack of understanding of what Git is actually doing, with the fear of losing work, and you get the perfect storm of a difficult experience. For most new users Git is unusable, unless you explain to them the right mental model of Git being a graph of immutable commit objects with pointers to access their contents. In my opinion, trying to make this model more transparent to a new user is the best way to improve their experience. What new users do not have a problem with is a lack of aliases, because they carry no previous expectation from other VCS's, as Git is always their first one. I can imagine aliases like 'co' only adding to the overload of information if an instructor is not careful. FWIW, I have never seen a new user complain about the length of the typing, it's usually with the plethora of unintelligible (to them) options that each command has when they open the Git man pages, which adds more fear. I do not have an opinion about default aliases, I only had a narrow point, ie, on the list of impactful things that helps Git newcomers around my circles, aliases would not score very high. Those who love the command line among the more enthusiastic learners will set those aliases themselves anyway. --- Atharva Raykar ಅಥರ್ವ ರಾಯ್ಕರ್ अथर्व रायकर