Pasando todos los parameters a un git alias

Para simplificar mi preocupación, lo networkinguje a lo siguiente:

Tengo un alias de GIT definido como tal:

cii = "!f() { git commit "$@"; }; f" 

Cuando corro

 $ git cii -m "test1" 

Funciona bien, pero falla con

 $ git cii -m "test1 and test2" error: pathspec 'and' did not match any file(s) known to git. error: pathspec 'test2' did not match any file(s) known to git. 

Alguna idea ?

Tenga en count que mi alias real es mucho más complejo que el anterior, por lo que responder con cii = "commit" no es una opción. El punto aquí es pasar los parameters de input a la function.

Debe citar las dobles comillas incrustadas.

 cii = "!f() { git commit \"$@\"; }; f" 

git realizará una expansión de shell estándar de "$@" que se traduce en una sola palabra para cada parámetro, como "$1" "$2" "$3" ...