Eu acho que o VIM sempre abre quando o git espera que você digite uma mensagem descritiva. Você pode contornar isso, fornecendo a mensagem para o comando git relevante através da opção "-m".
por exemplo. veja: git stash --help
...
git stash store [-m|--message <message>] [-q|--quiet] <commit>
...
informações adicionais após o esclarecimento nos comentários:
Existe um modo não interativo (o ex original) no VIM: "vim -e", a execução do comando "ex" do bash também deve funcionar. Mas você ainda precisaria canalizar os comandos do vim para ele. Abusar o env de $ EDITOR pouco antes da sua chamada de rebase do git deve fazê-lo, por ex. (o -s é para o modo silencioso):
export EDITOR="cat commands.vim | vim -es"
Mas quando você já está abusando do $ EDITOR env, você também pode simplesmente escrever outro script bash que faça as modificações do arquivo e use-o como editor:
export EDITOR="/path/to/your/script/"
De qualquer forma, não se esqueça de redefinir seu $ EDITOR depois disso.