2012-03-21 13 views
9

¿Existen soluciones prefabricadas para aplicar los buenos estándares de Python en los enganches commit de Git?Aplicar el formato PEP-8'ish en Github commits

¿Hay alguna forma de automamizar este proceso en las cajas locales (un bazar similar en el que uno puede enviar los ganchos de compromiso a los clientes)? Debería ser suficiente que cuando realice la compra de un repositorio vendría con commit hooks instalados, sin más trabajo/comandos para ejecutar.

E.g. si tu archivo .py tiene una pestaña, la confirmación se interrumpirá y se enviará un droide para azotar al desarrollador.

+0

para notar He escrito una pequeña herramienta para ayudar en todo esto: https://github.com/miohtama/vvv –

Respuesta

9

Puede agregar un servicio en el lado GitHub (consulte "GitHub - All the Hooks" y existing third-party services).

Pero no se puede "empujar un gancho" (véase "why it is not possible to git add .git/hooks/my-hook" o "Git remote/shared pre-commit hook".

Puede versión de la secuencia de comandos que serviría como gancho, pero cada cliente todavía tendría que activar su gancho pre-commit (con un enlace simbólico que apunta a que el guión versionado).

un ejemplo de un guión tan versionado (para los estándares de Python) sería visible en esta blog post, por Lorenzo Bolla, y actualizada en este GitHub repo.
se basa en PyLint y PyFlake (ver también "PyLint, PyChecker or PyFlakes?").


El PO menciona en los comentarios de la utilidad package vvv 0.1

una conveniencia para la validación del código fuente del software y la formación de pelusas

VVV es una herramienta para facilitar la validación y la pelusa de integración para su proyecto de software.
Con un solo comando, valide todos los archivos, sin importar en qué lenguaje de programación, en un árbol fuente contra una política que especifique en un archivo de configuración simple.
VVV evita que se cometan errores en el control de origen del software o facilita la limpieza.

+0

Nota: pylint y PyFlake no son una respuesta fr su estilo específico guía PEP8 Python, solo un ejemplo de cómo instalar y ejecutar un script de python en un gancho de Git. – VonC

+0

Ahora aquí hay una herramienta instalable de comando simple para esto: pypi.python.org/pypi/vvv/ –

+0

@MikkoOhtamaa Interesante Lo he incluido en la respuesta para una mayor visibilidad. – VonC

Cuestiones relacionadas