vim-fugitive for Vim/Neovim is even better as it allows you to do per line stages, not just per hunk.
There are many other plugins for vim and emacs (e.g. magit) that enhance one’s git workflow.