e.g. committing the staged changes would involve just "cc". Rewording the last commit is "cw", amending is "ce", and fixing up earlier commits is "cf".
Checking out a new branch is "bc", whereas creating a new branch is "bn".
Fetching to the default origin is "ff", likewise pushing is "pp".
But aside from the keymap being very terse, it's also highly discoverable. You're shown all the git commands, and before invoking a command, all the options for that command.
These all are included in zsh git aliases but listed these I'm using on regular basis.
I also have a function that checks out master, pulls it, runs DB migrations and so on.
For longer ones like `g reset --soft HEAD~1` where I cba setting up alias, I just ctrl+r and fetch them with fzf or zsh autosuggestions - probably same amount of keystrokes as typing out alias
I'd always make one for my work dev folder so I could quickly switch to it as soon as I restarted my terminal. I'd always make it just a 2 letter abbreviation. For example, my last one was an alias "s6" to take me the the correct dev folder.
I don't use aliases, and I don't feel line I am losing time, like at all. Well I need to touch my hardware key when I push, which takes half a second...
I feel like every other commit I forget something, so a `git j<tab>` (I don't have any other aliases that what with j) puts my last minute fix where it belongs. Also nice during interactive rebases.
used this post from Jonathan Suh, it's fairly comprehensive. I think I use most except several that I'm worried I might accidentally type in (in a hurry or whatnot) and do something too destructive: https://jonsuh.com/blog/git-command-line-shortcuts/
e.g. committing the staged changes would involve just "cc". Rewording the last commit is "cw", amending is "ce", and fixing up earlier commits is "cf".
Checking out a new branch is "bc", whereas creating a new branch is "bn".
Fetching to the default origin is "ff", likewise pushing is "pp".
But aside from the keymap being very terse, it's also highly discoverable. You're shown all the git commands, and before invoking a command, all the options for that command.