Llamar a Git Binary desde Python y códigos de error

Estoy tratando de build un set de utilidades git con Python. Estoy usando un subprocess. Popen para ejecutar el git binary. En este momento solo estoy tratando de encontrar la mejor manera de determinar si hubo un error al ejecutar un command git.

Mi pregunta es si git siempre devolverá un código de retorno de 0 en un command de git exitoso y siempre devolverá un código de retorno distinto de cero en una llamada sin éxito. Solo quiero asegurarme de que comprobar el código de retorno es una forma segura de detectar un error para poder salir de la secuencia de commands si un command de git no fue exitoso.

Sí, git (y cualquier progtwig * nix de buen comportamiento) siempre devolverá 0 para el éxito y no cero para la falla. Este es el paradigma de los sistemas GNU / Linux, y como Git fue creado por la misma persona que creó Linux, puede apostar que sigue la convención.