2010-09-03 14 views
5

Estamos pensando en traer un par de especialistas para proyectos a corto plazo. Estoy tratando de descubrir cómo permitirles desarrollarse efectivamente contra nuestro código base sin liberarles todo el código base.Git/Django: permiso/disponibilidad de código granular

Cada proyecto tiene áreas bien definidas a las que necesitan acceso; principalmente nuestros modelos principales, junto con piezas específicas de nuestra aplicación.

Hemos empezado a hacer un mejor trabajo al dividir el proyecto en varias aplicaciones dentro de un solo proyecto django, pero todas siguen viviendo juntas en un único repositorio git. Si revisas el repositorio, obtienes todo.

¿Cuáles son las estrategias exitosas para organizar códigos y repositorios de modo que terceros puedan acceder a los modelos básicos y a la funcionalidad seleccionada sin tener acceso a todo?

Tenga en cuenta que debido a que esta es una necesidad algo rara, preferiría una configuración que no incomode a nuestros desarrolladores principales: sus vidas deberían verse mínimamente afectadas por la configuración.

Respuesta

1

Puede probar git-submodule como una forma de desarrollar cada aplicación como su propio repositorio de git y, al mismo tiempo, dejar que los desarrolladores agarren la raíz y todas las aplicaciones con un "clon git". Sin embargo, no es totalmente sencillo ya que cuando hace esto, cualquier cambio en un submódulo deberá ser cometido una y otra vez en el repositorio raíz para hacer referencia al nuevo compromiso del submódulo. Esto probablemente sea inevitable, ya que si desea que cualquier persona que esté al lado de un desarrollador principal pueda comprometerse con una aplicación individual, entonces la aplicación confirma y debe ser independiente.

+0

En este caso, los modelos principales también deberían estar en un submódulo. – bstpierre

Cuestiones relacionadas