El control de código fuente nos brinda una gran ayuda para administrar nuestros proyectos sin embargo en algunas ocasiones puede que por una acción que realicemos no funcione tan bien como esperábamos, por ejemplo:
Se está desarrollando un software y se tienen dos repositorios (producción y pruebas) , los cambios que realizamos primero deben de pasar a «pruebas» y si son aceptados entonces se envían a producción pero que sucede si se nos olvida este detalle y enviamos los cambios a «producción» ; bueno existe la posibilidad que no afecten pero si afectan pueden echar a perder el trabajo.
Visual Studio Team Services (VSTS) nos brinda la posibilidad de tener un manejo de los cambios que se van a realizar en los repositorios, es decir se puede configurar si un usuario tiene acceso a cierta área del proyecto para contribuir, solo para lectura o bien que pueda contribuir sin embargo cuando envíe los cambios para que surtan efecto deben ser aprobados por una persona o equipo determinado. Hoy vamos aprender a establecer los permisos de un usuario o equipo en un repositorio.
Vamos a ingresar en el panel de nuestro repositorio de VSTS , agregamos un usuario (en este artículo explico al respecto) y damos click en el icono del engrane que se encuentra en el menú superior.
Aparece una nueva ventana en la que podemos administrar todo nuestro espacio de trabajo, de momento vamos a trabajar en la sección de «Control de código fuente».
Cuando se abre la sección vamos a observar tres secciones:
- Repositorios: en la sección izquierda podemos seleccionar si se va establecer permisos para todos los repositorios, un repositorio o una rama del proyecto.
- Grupos y usuarios: en la sección del centro podemos seleccionar el grupo o el usuario al que estamos estableciendo los permisos.
- Permisos: en la sección derecha aparecen los permisos y el estado de cada uno de ellos.
Cuando nosotros agregamos un usuario en el panel por defecto se agrega en el grupo de «Contribuidores» lo que nos brinda la posibilidad de realizar cambios y enviarlos pero vamos a cambiar un poco este comportamiento, para ello vamos a iniciar agregando un usuario y después un grupo.
Usuario
para ello damos click en «Agregar» seguido de «Agregar Usuario»
Nos va solicitar el nombre de usuario o la cuenta Microsoft del usuario, vamos a ingresar estos datos y lo seleccionamos
Una vez agregado vamos a seleccionar el usuario y nos van a aparecer los permisos de éste, para cada permiso hay tres estados:
- Permitir: Permite el acceso a la acción
- Denegar: Impide el acceso a la acción
- Sin establecer: Hereda el estado del padre, es decir si está en un grupo toma el permiso de éste.
Como había mencionado este usuario está en el grupo de «Contribuidores» por lo que va heredar los permisos de éste, pero vamos a indicar que no tiene permiso para hacer un push y leer por lo que establecemos estos estados en «Denegado»
Ahora si intentamos leer los datos del repositorio o hacer un push nos va aparecer un mensaje que indica que no se logró encontrar el repositorio (en este caso voy a trabajar con la línea de comandos pero ustedes pueden realizarlo desde una interfaz)
Fetch
git fetch fatal: repository 'https://nuestraurl/' not found
Push
git push fatal: repository 'https://nuestraurl/' not found
Ahora si cambiamos los permisos
Fetch
git fetch nuestropath [master]>;
Push
git push Counting objects: XX, done. Delta compression using up to X threads. Compressing objects: 100% (X/X), done. Writing objects: 100% (X/X), X bytes | X bytes/s, done. Total X (delta X), reused 0 (delta 0) remote: Analyzing objects... (X/X) (Xms) remote: Storing packfile... done (X ms) remote: Storing index... done (X ms) To https://nuestraurl master -> master
Grupo
Acá les recomiendo que primero eliminen las configuraciones por defecto que se tiene en el equipo de trabajo ya que él los agrega a contribuidores y si ustedes establecen un nuevo permiso puede que no lo sobre escriba y tengan que realizar otros cambios.
Primero vamos a eliminar la acción por defecto de que cuando se añada un usuario se agregue al grupo de contribuidores
Una vez eliminadas las configuraciones vamos a agregar un grupo existente (acá pueden encontrar más información respecto a crear grupos)
Cuando se agrega vamos a establecer los permisos para que no tenga acceso al repositorio
Si se intenta obtener los últimos cambios
Fetch
git fetch fatal: repository 'https://nuestraurl/' not found
Push
git push fatal: repository 'https://nuestraurl/' not found
Ahora si cambiamos los permisos
Fetch
git fetch nuestropath [master]>
Push
git push Counting objects: XX, done. Delta compression using up to X threads. Compressing objects: 100% (X/X), done. Writing objects: 100% (X/X), X bytes | X bytes/s, done. Total X (delta X), reused 0 (delta 0) remote: Analyzing objects... (X/X) (Xms) remote: Storing packfile... done (X ms) remote: Storing index... done (X ms) To https://nuestraurl master -> master
Bueno hemos aprendido a definir los permisos para un repositorio ya sea que se le apliquen a un usuario en específico o grupo, espero que les sea de ayuda 🙂
De inicio en el tfs online, me crea 7 sprints, como puedo borrar sprints?
Me gustaMe gusta
Hola disculpa la demora en este artículo hay una explicación https://sir-rover.com/2016/12/23/modificando-interacciones-sprints-en-visual-studio-team-services/ espero que le sea de ayuda
Me gustaMe gusta