Como um hack rápido, você pode adaptar o valor 'textwidth'
sempre que o cursor se mover:
:autocmd CursorMoved,CursorMovedI <buffer> let &l:textwidth = (getline('.') =~# '^\((patch)\|(minor)\|(major)\)' ? 0 : 75)
Você pode colocar esse comando em ~/.vim/ftplugin/gitcommit_textwidth.vim
para que ele se aplique automaticamente às mensagens de commit do Git.
Alternativa
Para evitar a duplicação do padrão, meu plug-in OnSyntaxChange permite que você configure :autocmd
s que reagem a mudanças no grupo de sintaxe subjacente. Basicamente funciona como a solução acima, mas em um nível muito mais elaborado.
call OnSyntaxChange#Install('AutoPublish', '^autoPublishLine$', 1, 'a')
autocmd User SyntaxAutoPublishEnterA setlocal textwidth=0
autocmd User SyntaxAutoPublishLeaveA setlocal textwidth=75