Instalación del sistema de control de versiones Git en el sistema

Accede a la página de descargas de la web oficial de Git y descarga la aplicación cliente correspondiente para tu sistema

Configuración de Git en Android Studio

Accede a las Preferencias de Android Studio, y dentro de la sección Version Control > Git debes indicar, o comprobar que se encuentra, la ruta en la que se encuentra instalado Git, dentro del cuadro de texto Path to Git executable.

Utiliza el botón Test para comprobar que se ha configurado correctamente.

Activar el sistema de control de versiones Git en el proyecto

Accede en Android Studio al menú VCS > Enable Version Control Integration, y en la ventana de diálogo que aparece, donde solicita el tipo de VCS que se desea utilizar, selecciona la opción Git.

A partir de eso momento en la barra de estado podrás ver que el proyecto tiene activado Git, e incluso podrás crear desde ahí posteriormente diferentes ramas (Brach) del proyecto. Inicialmente indicará que te encuentras en la rama principal master.

Añadir archivos del proyecto a Git

Podrás ver que el color de los nombres de archivos cambia en función del estado en que se encuentren dentro de este sistema de control de versiones:

  • Marrón: No se ha añadido a Git
  • Verde: Añadido a Git pero aún no se ha hecho ningún commit sobre él.
  • Azul: El archivo está registrado por Git y se ha realizado algún cambio en el contenido del archivo.
  • Negro: El archivo ya está registrado por Git habiéndose hecho un commit o bien se ha indicado que Git lo ignore.

Inicialmente, la mayoría de los archivos aparecerán en color marrón, indicando que aún no se han añadido a Git para que los gestione. Algunos aparecen en negro, ya que serán ignorados por Git al estar añadidos sus nombres o carpetas dentro del archivo .gitignore del proyecto.

Por tanto, ahora toca añadir todos los archivos del proyecto al sistema de control de versiones para que los controle. Esta acción se realiza desde el menú VCS > Git > Add o bien usando el menú contextual de la carpeta que se quiera añadir, con la opción Git > Add. Es IMPORTANTE, la primera vez que se hace esta acción (Add), que se añadan los archivo de código fuente del proyecto, pero TAMBIÉN LOS SCRIPTS DE GRADLE, para que cuando se descargue el proyecto desde un repositorio remoto, se reconozca el proyecto directamente como un proyecto de Android Studio, y no que sólo se incluya el código fuente. La manera más cómoda de hacer esto puede ser cambiando la vista del árbol del panel izquierdo que se ha mostrado en la imagen anterior, cambiando en la lista desplegable de la parte superior la vista Android por la vista Project. De esa manera se mostrarán todos los archivos dentro de la carpeta del proyecto como se podrían ver desde un explorador de archivos. Por tanto, si se usa la opción Add de Git desde la carpeta de todo el proyecto, se añadirán tanto los archivos del código fuente como los Scripts de Gradle.

Volviendo de nuevo a la vista Android, comprueba que todos los archivos que antes aparecían en marrón (tanto del código fuente, como los scripts de Gradle), ahora están verdes, lo cual indicará que todos ellos estarán ahora controlados por Git.

Hacer commits

Cada vez que te interese guardar una copia del estado actual del proyecto, con idea de que en algún momento pueda interesar volver a ese estado (como si fuera un punto de restauración) o si quisieras ver cómo estaba el código fuente en ese momento después de que se haya modificado, deberás hacer un commit.

Para ello, puedes usar la opción Git > Commit directory, desde el menú contextual o desde el menú principal VCS.

En la ventana de diálogo que aparece asegúrate de que aparecen marcados todos los archivos que deseas incluir en la copia. Ten en cuenta de nuevo, que se estabas usando la vista Android del árbol del proyecto, no te aparecerán marcados los archivos de los scripts de Gradle, así que márcalos si no lo están. Por otro lado, debes escribir en el cuadro inferior un mensaje indicando algún comentario que haga referencia al estado actual del proyecto o los últimos cambios que has introducido desde un Commit anterior. En la parte derecha de la ventana indica tu nombre para que aparezca posteriormente en la lista de commits realizados sorbe este proyecto. Lo habitual ahí es indicar tu nombre seguido del correo entre los caracteres <>. Por último, conviene desmarcar la opción Check TODO, ya que te impedirá hacer el commit si el código fuente incluye algún comentario que incluya la palabra TODO (por hacer), y en los asistentes que crean inicialmente los proyectos de Android suelen aparecer varios.

Puedes ver que se ha completado el commit en el panel inferior Version Control, seleccionando la pestaña Log

Subir a un repositorio remoto (Push)

Para tener una copia de tu proyecto en Internet, o en un servidor Git de tu red, y que otras personas puedan acceder a él si lo deseas, puedes alojar los commits que realices en sitios web como GitHub, Bitbucket, etc.

En primer lugar deberás tener una cuenta de usuario en el servicio que desees utilizar, y crear un repositorio para cada proyecto que desees alojar. 

Una vez que cumplas esos requisitos, puedes enviar una copia de los commits que realices de tu proyecto cada vez que lo desees, usando la opción Git > Repository > Push. La primera vez que los hagas deberás registrar el repositorio que quieres utilizar. Utiliza el enlace Define remote que aparece, e indica en el campo de texto URL la dirección de tu repositorio que te lo proporcionará el servicio que vayas a utilizar.

Por ejemplo, en GitHub podrás ver la dirección de esta manera tras crear el repositorio:

Indica la URL proporcionada y el nombre para el repositorio remoto (normalmente se deja el nombre origin).

Si no tienes registrada en Android Studio tu cuenta de usuario y contraseña del repositorio remoto tendrás que indicarlos, guardando la contraseña si lo deseas. Cuando lo hagas ya podrás usar el botón Push para enviar el proyecto al repositorio remoto.

En el panel Version Control puedes ver que ya se indica que el último commit realizado se encuentra también en el repositorio remoto llamado origin.