2012-02-23 10 views
13

Estoy usando github.Acceso de restricción de Github

Estoy tratando de averiguar cómo restringir el acceso de repos para un contratista que tengo.

que tienen los principales carriles de código base y también tengo un contratista que va a hacer un trabajo de tipo css/UX para mí.

Quiero dar al contratista la capacidad de registrar el código en git hub solo para ciertas carpetas.

Idealmente, puedo pedirle que ingrese el código y luego se puede implementar en el servidor para que pueda ver los cambios.

No creo que pueda hacer esto limitando el acceso dentro de un repositorio git específico, pero tal vez haya una manera de usar dos repo y restringir el acceso de esa manera.

¡Cualquier ayuda sería apreciada!

+0

Si el contratista solo tiene acceso a ciertas carpetas, ¿cómo puede probar lo que está haciendo? – robert

+0

el objetivo sería que solo esté editando css look and feel. así que solo está editando clases de CSS. entonces, si el css se despliega automáticamente, debería poder verlo cuando llegue a la aplicación en ejecución. – jignesh

Respuesta

9

Si todos los archivos css/ux están dentro de una subcarpeta particular, y usted quiere que él tenga acceso a todo en ese directorio, y más abajo, puede hacerlo con los submódulos de git.

El contratista tendría push/pull derechos al repositorio que es un submódulo, pero sin comprometer los derechos en el repositorio principal.

También puede utilizar la función de solicitud de extracción y asegurarse de que solo se compromete con la carpeta que desea.

+0

Creo que el submódulo puede funcionar mejor. No he trabajado mucho con el nuevo contratista, así que estoy un poco cansado de darle acceso y dejarlo comprometerse con la rama correcta. Una vez que entiendo su estilo de trabajo un poco más, esa puede ser la opción más simple. – jignesh

+1

Si está en github, puede dejar que cometa lo que quiera * his * repo. Cuando esté listo para realizar un alto trabajo, puede enviar una solicitud de extracción y podrá revisar su código antes de ingresarlo al repositorio * principal * – Andy

7

no he hecho esto, pero parece que tal vez usted tiene 2 opciones:

1) concedan al contratista acceso tracción (push), pero no en el repositorio. Luego, pueden bifurcarlo, hacer su trabajo en el tenedor (¿probablemente dentro de una sucursal?) Y luego enviarle solicitudes de extracción y usted necesitaría hacer sus cambios. Lo malo es que el contratista no puede obtener el código para el servidor sin su intervención (que podría ser un beneficio, dependiendo).

2) Si su trabajo está aislado en un subárbol, use dos repositorios y make one a submodule of the other. Luego puede establecer el control de acceso de manera diferente en los 2 repositorios, pero obtiene una vista unificada del proyecto.

+0

Creo que esto podría funcionar. ¿Habría leído el acceso al repositorio principal? Solo quiero darle todos los derechos sobre el repositorio de submódulos. Supongo que lo principal que trato de hacer es autodeploy. – jignesh

+0

Sí, lo haría. De nuevo, toma esto con un grano de sal; Realmente no lo he hecho. – denishaskin

Cuestiones relacionadas