Você não especifica o que há de errado em abrir uma nova janela do GUI emacs. Se o problema for o longo tempo de inicialização, considere usar o emacsclient como seu editor. Em poucas palavras, você executa (server-start)
o arquivo init do emacs e mantém o emacs da GUI normal aberto, e então diz ao git para usar um editor chamado emacsclient. O que acontece é que o arquivo editado aparece em um novo buffer no seu emacs em execução. Depois de terminar, você pressiona C-x #
para finalizar a sessão do emacsclient e, em seguida, o git (ou outro processo de shell que iniciou o editor) sabe que o editor "emacsclient" termina o arquivo e continua com ele. ("emacsclient" também é uma palavra, por isso também resolve seu problema imediato)
Mesmo quando a edição precisa ser feita na janela do terminal, você pode executar emacsclient -nw
e eliminar o longo tempo de inicialização. Existem mais possibilidades, man emacsclient
é uma boa leitura.