¿Ejecución de logging y errores de git-receive-pack en server restringido?

Tengo acceso ssh limitado a un server Linux restringido; dado que el server no incluye 'git', simplemente copié los ejecutables que tengo allí, y luego uso:

git config remote.origin.receivepack "/path/to/my/git-receive-pack" 

… en mi repository local.

Logré hacer clone / pull trabajando en este context (del server al local), pero tengo un error de permiso al hacer el push. Entonces, pensé, sería muy bueno tener un logging aquí, para poder averiguar dónde está el error (con suerte, en el file exacto que se creará o actualizará). Desafortunadamente, git-receive-pack no tiene una opción de línea de command para el logging; así que intenté algo como:

 git config remote.origin.receivepack "/usr/bin/git-receive-pack 2>&1 >> /path/to/my/grec.log" 

… y escribe algo así como:

 008860dbe54430bbbd639307d50621c491a4fd69a822 refs/heads/master report-status delete-refs side-band-64k quiet ofs-delta agent=git/1.9.1 0000 

… en el file de logging, pero desafortunadamente todo el process de git push bloquea y no se completa; por lo que pude ver, eso es porque git / receive-pack.c ya usa stdout y stderr para (supongo) hacer algo internamente.

Entonces, ¿puedo de alguna manera envolver git-receive-pack en un script de shell en el server, para que todas sus operaciones se registren en un file, pero que también interactúe correctamente con el rest del process de git y complete en order (y no lo haga)? 't lock)?