Como usar repositorios Git en Visual Studio 2013?

A raíz de una charla que tuve con un compañero de trabajo hace unos días, me pareció interesante hacer este post para comentar como utilizar repositorios Git en Visual Studio 2013.

Lo primero a destacar es que no necesitaremos ningún componente adicional para utilizar repositorios Git, ya que en la versión mencionada anteriormente está incluido de forma nativa.

Si no están muy al tanto del funcionamiento básico de Git, les recomiendo la lectura del Tutorial de Git de Atlassian, el cual explica de forma clara los conceptos. Esto por nombrar solo un tutorial, en la web podrán encontrar muchísimos más, cada uno con distintos enfoques.

Vayamos paso por paso. Lo primero que vamos a hacer es crear nuestro repositorio Git, para lo cual en este ejemplo usaremos Bitbucket. Si no tienen una cuenta, la pueden crear de forma totalmente gratuita aquí.

Una vez que ingresamos con nuestro usuario, seleccionaremos la opción “Crear” del menú superior, e ingresamos los datos solicitados:

GitVS2013 - CrearRepo
Creación del repositorio en Bitbucket

Una vez que lo realicemos, seremos redirigidos a una página como la siguiente, en la cual veremos todos los aspectos relacionados al repositorio. Lo que debemos buscar es la dirección del repositorio para clonar:

GitVS2013 - ObtenerUrlRepo
Obtener dirección para clonar el repositorio

Ahora debemos ir a Visual Studio 2013 y configurar el repositorio. Para ello debemos ir a la pestaña “Team Explorer” (si no la tenemos, se abre desde “Ver > Team Explorer“) y seleccionar la opción “Conectar a proyectos de equipo“.

Allí nos aparecerán las opciones para agregar repositorios de TFS o Git. Vamos a la parte de Git, seleccionamos la opción “Clonar” y agregamos la dirección del repositorio que copiamos (sin los comandos de Git) junto con la dirección local en la cual queremos que se almacene el contenido del repositorio:

GitVS2013 - ClonarRepo
Clonar repositorio en Visual Studio

Una vez que presionemos “Clonar“, se enlazará a la carpeta seleccionada mostrándonos el siguiente mensaje:

GitVS2013 - RepoClonado
Repositorio clonado correctamente

Nota: En este caso no me solicitó autenticarme debido a que ya lo había realizado para otros repositorios que uso con el mismo usuario.

Si hacemos doble click sobre “repositorio-demo” de la imagen anterior, nos mostrará la siguiente pantalla en donde tendremos los accesos necesarios para la gestión del repositorio en nuestro ambiente:

GitVS2013 - OpcionesRepo
Opciones repositorio

Finalmente, vamos a crear un proyecto de prueba y subir los cambios al repositorio. Para ello seleccionamos la opción “Nueva…” dentro de la sección “Soluciones” de la imagen anterior. Allí se nos abrirá la pestaña convencional para crear una solución, pero con la ubicación correspondiente al repositorio y el check de “Agregar al control de código fuente” (si este último no está seleccionado, lo hacemos nosotros).

GitVS2013 - CrearSolucion
Crear solución en el repositorio

Una vez finalizada la creación del mismo, vamos al “Explorador de soluciones” y seleccionamos la opción “Confirmar” sobre la solución:

GitVS2013 - ConfirmarCambios
Confirmar cambios

Allí nos mostrará la siguiente pantalla, en la cual podremos ver los cambios que se subirán, los archivos que queremos excluir y los que no tienen seguimiento.

GitVS2013 - CambiosPendientes
Pantalla de cambios pendientes

Allí seleccionaremos la opción “Confirmar“, de forma que subamos los cambios al repositorio local. También tenemos disponibles las opciones “Confirmar e insertar” y “Confirmar y sincronizar“, para realizar todas las acciones en un solo paso. Para este post, vamos a realizarlo de forma separada.

Una vez que confirmamos los cambios, nos aparecerá el mensaje de que los cambios fueron subidos correctamente, con un enlace para que sincronicemos el repositorio:

GitVS2013 - CommitCorrecto
Confirmación de cambios correcta

Presionamos dicho enlace, el cual nos llevará a la siguiente pantalla. En la misma será donde se produzca la interacción con los repositorios remotos:

GitVS2013 - RepositorioRemoto
Opciones para sincronizar los cambios con el repositorio remoto

Como vemos en la imagen, podremos buscar y extraer las confirmaciones de entradas que hayan hecho otras personas con las que trabajamos, además de subir nuestros propios cambios al repositorio remoto. En este caso seleccionamos la opción “Sincronizar” (aunque también podríamos haber seleccionado la opción “Insertar” sobre la confirmación que acabamos de hacer). De esta forma nuestros cambios estarán subidos al repositorio y disponibles para cualquier otra persona con la que trabajemos.

Como vemos, la interacción con repositorios Git está totalmente integrada y su uso es muy simple. En cualquier momento podremos comparar un archivo con su versión anterior, ver su historial de cambios, deshacerlos o excluirlos de una determinada confirmación.

GitVS2013 - OpcionesArchivos
Opciones sobre los archivos para el control del código fuente

Incluso si estamos trabajando con otras personas, tendremos las facilidades para la combinación de los cambios cuando haya conflictos de forma nativa.

Espero que les sea de utilidad, cualquier duda o sugerencia no duden en comentar!!

Anuncios

15 comentarios en “Como usar repositorios Git en Visual Studio 2013?

    • Hola.
      Para trabajar con un repositorio ya existente lo que debes hacer es lo indicado en la parte de la clonación del repositorio ya existente. Cuando realices eso automáticamente te bajará todos los cambios existentes en el mismo, en este post no lo marcamos ya que justo estábamos clonando uno vacío.
      A partir de ello ya podrán trabajar ambos sobre el mismo repositorio.
      Comentame si te sirve o se te presenta alguna otra situación.
      Saludos!

      Me gusta

  1. Buen dia amigo Diego Bersano, he tenido problemas al momento de sincronizar, en mi casa cree un proyecto y lo subi a bitbucket, hasta alli todo bien, y cuando trato de descargarlo (clonarlo) en la maquina de mi trabajo no me descarga ni clona nada, espero me puedas ayuda, saludos.

    Me gusta

  2. Hola me ayudo mucho esta guia, muchas gracias! , ahora volvi a ella, porque quise hacerlo de nuevo, en la misma solucion pero en otro proyecto distintos (Tengo dos cada uno en carpetas diferentes , en la misma solucion,) y no pude hacerlo. Logro clonar el repo de Bitbucket a este nuevo pero cuando quiero buscar la opcion Agregar al control de código fuente(es un proyecto ya existete) no la encuentro!!, sabrias porque ?? GRACIAS!!

    Me gusta

    • Buenas Bruno, me alegro que te haya servido.
      Ante lo que me comentas se me ocurre la alternativa de que vayas al “Team Explorer”, “Changes”, “Excluded changes”. Allí deberían estar todos los archivos físicos que están en la carpeta de la solución pero no han sido agregados al control de código fuente.
      Comentame si te sirve, saludos!!

      Me gusta

  3. Hola Diego, gracias por tu respuesta!. He estado probando, lo que dices lo encontré pero alli estan todos bien agregados. Excepto que directamente no aparece este otro proyecto (que en realidad es una referencia a otro proyecto) no me aparece su references ni tampoco los archivos, es q es otro proyecto en otro lado, sin embargo creo que lo que hare será hacerlo desde GIT, un git init en un nivel superior a estos dos proyectos y darle seguimiento desde aqui. Muchas gracias Diego, un abrazo

    Me gusta

  4. Hola amigo, gracias pro el tuto. Pero como lo hago para actualizar el repo en el que estoy trabajando (que se sincronice el trabajo de todos en mi maquina) antes de subir mis cambios.

    Me gusta

    • Hola Mauricio, gracias a ti por pasar por el blog y dejar la consulta.
      La forma más sencilla es ir a la opción de “Sincronización” (opción con las dos flechas en el menú del “Team Explorer”. Allí tienes dos opciones:

      – Bajar solo los cambios del equipo: para esto usarás la opción Pull, la cual te trae los cambios. A su vez, si solo quieres validar los cambios que hay puedes hacer un Fetch, que solo te mostrará los cambios para bajar.

      – Bajar los cambios y subir los tuyos: esto lo que hará es subir todos los cambios que tengas pendientes de realizar el Push, previa descarga de todos los cambios disponibles y resolución de los conflictos.

      Espero tus comentarios sobre si te ha servido, saludos!

      Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s