I certainly see the value in this strategy! But I'm not going to give up my top-level aliases. I enjoy saving two keystrokes too much!
Here are my most used aliases (these ones use Nushell syntax):
alias st = git status
alias sw = git switch
alias ci = git commit
alias lg = git log --color --graph '--pretty=format:%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
alias push = git push
I was also delighted to learn that I could get the same short aliases for corresponding fugitive commands in vim/neovim using the vim-alias plugin:
-- This is a lazy.nvim plugin module
return {
'Konfekt/vim-alias',
config = function()
-- Shortcuts for git operations to match some of the shell aliases I have.
-- For example, `:sw ` expands to `:Git switch `
vim.cmd [[Alias sw Git\ switch]]
vim.cmd [[Alias ci Git\ commit]]
vim.cmd [[Alias pull Git\ pull]]
vim.cmd [[Alias push Git\ push]]
vim.cmd [[Alias show Git\ show]]
vim.cmd [[Alias re Git\ restore]]
vim.cmd [[Alias lg GV]]
end,
}
Fugitive is very nice for integrating git workflows in the editor, and its commands have very nice tab completion for branches and such.