Uso de Git en Android Studio
En este taller aprenderás a utilizar el framework de git que viene incluído dentro del IDE de Android...
El trabajo en equipo es algo indispensable y cada vez existen más software y herramientas que lo hacen posible. Pero para que el trabajo sea realmente eficiente, primero tienes que saber cómo usarlos. Git es una de ellas, y si quieres empezar a desarrollar, es importante que la conozcas y así sepas cuáles son todas las ventajas que te ofrece
Una de las herramientas para el trabajo colaborativo más utilizadas en la actualidad es sin duda Google Drive.
Esta te permite compartir documentos, hojas de cálculo, presentaciones, etc., con tus compañeros y así poder trabajar todos a la vez, modificando los archivos y uniendo nuevo contenido cada uno desde la comodidad de vuestra casa.
Sería genial poder contar con una herramienta así en los equipos de desarrollo, ¿verdad?
¿Y si te digo que tenemos la solución? ¡Te estoy hablando de Git!
¿Quieres empezar a aprender sobre ello? ¡Sólo tienes que seguir leyendo!
Comenzaremos respondiendo a esta pregunta, ¿qué es Git y para qué sirve?
Git es uno de los programas de software más utilizados en la actualidad en el ámbito del desarrollo.
Si te preguntas qué es y para qué sirve Git, podríamos decir que se trata de una herramienta de control de versiones (VCS) de código abierto. Gracias a este, se pueden gestionar las diferentes versiones por las que pasará el código de tus proyectos en los diferentes momentos de su creación tanto si son individuales o en equipo.
¿Para qué se utiliza el control de versiones? Principalmente para el desarrollo de software.
¿Y cómo funciona? Muy sencillo, este se encarga de almacenar una copia de todos los cambios realizados en los archivos de tus proyectos en un repositorio, lo que permite ver su evolución y volver a versiones anteriores en caso que sea necesario.
Pero entre los numerosos programas que cumplen esta función, ¿por qué elegir Git? ¿Qué lo diferencia de los demás?
Entre las diferentes características que hacen destacar a Git entre su competencia encontramos:
La configuración de su modelo de repositorio, siendo este compatible con diferentes protocolos de transferencia cómo son HTTP (HyperText Transfer Protocol), FTP (File Transfer Protocol) o SSH (Secure Shell); y sistemas.
Es un sistema de control distribuido, lo que permite que cada usuario pueda tener una copia completa de su repositorio en su propio sistema. Lo que proporciona flexibilidad e independencia para gestionar el trabajo.
Su velocidad y rendimiento no se limitan únicamente a pequeños proyectos, sino que también se ajusta perfectamente a otros más grandes.
Garantiza la integridad de los datos almacenados en el repositorio, por lo que cada archivo y cambio realizado en este tendrá una firma única siendo fácilmente detectable cualquier alteración, previniendo así posibles pérdidas de datos.
Facilita la gestión de ramas de trabajo, esto permite crear una nueva rama separada de la principal, en la que podrás realizar los diferentes cambios sin afectar al proyecto y finalmente fusionarla a la original. Esto facilita el desarrollo en paralelo, permite experimentar sin riesgos y tener mayor eficiencia en el trabajo realizado.
Ahora que ya conoces las ventajas de Git, ¿te interesa implementarlo en tu día a día? Si es así, te dejamos los pasos necesarios para aprender Git desde cero, desde su instalación hasta los primeros pasos.
A continuación, te mostramos las pautas a seguir y los comandos Git que debes utilizar para su instalación
En el caso de Windows, la instalación es más sencilla. Te dejamos los pasos por aquí:
Si tu sistema es Linux, ¡tienes suerte!, la mayoría de dispositivos que tienen integrados este sistema operativo suelen tener instalados Git. Para comprobar si es así, escribe en tu shell este comando: git --version
En caso afirmativo, podrás ver un mensaje en el que te indique cuál es la última versión con la que cuentas.
Si finalmente no cuentas con este software, según la distribución con la que cuentes, debes seguir unos pasos u otros.
En el caso de que tu distribución sea Ubuntu / Debian / Linux Mint, debes hacer lo siguiente:
$ sudo apt-get update
$ sudo apt-get install git
En caso de que cuentes con Fedora, el procedimiento es este:
$ sudo dnf install git
o bien $ sudo yum install git
Si en tu caso, tienes un sistema operativo macOS, hay formas diferentes de instalarlo, pero la más fácil es la siguiente:
Antes de comenzar a explicaros cómo usar Git, debemos poner el software a punto para obtener su mayor rendimiento.
Una vez creas que la instalación se ha llevado a cabo, debes verificarlo de la siguiente forma introduciendo el siguiente comando en terminal: git --version
Una vez tengamos el “sí” por parte de nuestro dispositivo, solo quedaría un pasito más para poder empezar a desarrollar tus futuros proyectos.
Aunque tras la instalación de Git creas que ya puedes empezar a utilizarlo, primero, hay que hacer una última configuración inicial, con el fin de informar a Git quiénes somos y que tenga constancia de nuestro email, ya que así es como podrá firmar cualquier cambio que realicemos en el código de nuestros proyectos. Para ello, tendrás que lanzar el siguiente comando:
git config --global user.name "Tu nombre"
git config --global user.email "tu_email@example.com"
Para empezar a utilizar Git, lo primero que debes de hacer es crear un repositorio, y aquí te explicaremos cómo hacerlo.
Para crear nuestro repositorio, el primer paso sería iniciarlo, ¿y cómo lo hacemos? A continuación, te lo explicamos.
Este proceso es necesario para comunicar a Git que empiece a llevar un control sobre los cambios que se llevarán a cabo desde ahora.
Para ello, simplemente debes usar el siguiente comando: git init
Al ejecutarlo en nuestro dispositivo, hará que se cree un nuevo subdirectorio en tu directorio de trabajo actual; creándose al mismo tiempo una nueva rama principal de tu proyecto.
Cada proyecto lo tendrás guardado en una carpeta distinta y repositorio independiente, es por eso importante realizar esta operación de inicio de repositorio únicamente al principio de cada proyecto que quieras crear.
Una vez realizado este procedimiento, podrás ver que se ha creado una carpeta llamada “.git” dentro del proyecto en el que te encuentres, aunque en ocasiones también se encuentra oculta. Pero no debes borrar ni acceder de forma directa a su contenido, ya que la interacción con estos se hará siempre a través de comandos.
Cuando hablamos de commit, nos referimos a la copia que se hace del proyecto en un momento determinado y guardarlo en tu repositorio; tú puedes elegir cuándo hacerlo y qué cambios quieres incluir en él.
Para hacerlo, debes prepara aquellos cambios que quieras guardar antes de llevar a cabo el commit. Estos quedan en una zona llamada “zona Index” o “Staging Area”, donde estarán temporalmente mientras se eligen todos aquellos ficheros que quieras incluir en el commit. Para ello, utilizarás el comando: git add
Vamos a ver un ejemplo para que sea más sencillo entenderlo. Si tenemos un archivo llamado, por ejemplo, “la234.py” el cuál has modificado y ahora quieres incluirlo en el commit que vas a realizar, haces lo siguiente: git add la234.py
Si quieres incluir todos los archivos modificados y no solo uno, se utilizará el siguiente comando: git add
El punto final del comando es importante, ya que este será el que indique que se quiere almacenar todos esos archivos en el repositorio que has creado.
Antes de hacer el commit, para comprobar que los ficheros que has incluido, lo han hecho correctamente, se lanza el siguiente comando: git status
Una vez que todos los cambios están preparados en la zona de index y quieres hacer el commit. Se debe lanzar el siguiente comando. git commit -m
En el caso de que quieras dejar un mensaje en el commit que describa de qué se trata, solo debes escribir el título en el comando. Por ejemplo, el cambio que has hecho consiste en un proceso realizado para el registro de usuarios. Pues se indicaría de la siguiente forma:
git commit -m “Nueva función de registro”
Una vez realizada la acción, se abrirá un editor de texto para solicitar un mensaje de confirmación junto con aquellos cambios que se han incluido y que quieres guardar en el repositorio.
Aquí podrás ver los comandos de Git esenciales, que necesitas para dar tus primeros pasos.
A parte de los comandos de commits que hemos mencionado en el apartado anterior, existen otros con diversas funcionalidades y que son básicos para el uso de Git:
git log
: este comando es utilizado para ver los diferentes commits que tiene tu proyecto, y con el que conseguiremos la siguiente información: autor, fecha y mensaje del commit.git revert
: este comando es utilizado para revertir un commit. Se suele usar seguido del identificador del commit que deseas deshacer (nombre que le has puesto).git commit –aemend
: es utilizado para editar el mensaje de un commit o editar los archivos que este contiene.git reset
: elimina los cambios realizados aun cuando no se ha llevado a cabo el commit.git checkout
: para descartar cambios antes de llevar a cabo el “commit”, cuándo el archivo con cambios se encuentra aún en el “staging area”.Una rama (también conocida como branch), es una línea de desarrollo independiente. Estas son muy útiles, ya que permite que los desarrolladores puedan trabajar dentro de diferentes características, al mismo tiempo que experimentan nuevas funcionalidades sin miedo a afectar al trabajo original.
Es importante mencionar, que encontrarás diferentes ramas, siendo la principal la denominada como “máster”
Aquí, te explicamos los pasos básicos para que aprendas a cómo trabajar con ellas:
git branch
git branch rama 2
git show-branch
git checkout rama 2
git branch -d rama 2
Con estos pasos, podrás moverte de forma básica en la creación y desarrollo de nuevas ramas.
Cómo hemos explicado antes, se pueden crear diferentes ramas de un mismo proyecto, pero también se pueden fusionar ramas externas, aquí podrás ver cómo hacerlo y te explicaremos los posibles errores que podrás encontrar en el proceso.
El uso de ramas es interesante, cómo ya habíamos dicho antes, porque te puede permitir experimentar diferentes procesos sin afectar el trabajo principal o el de otros compañeros, pero ¿cómo puedes fusionar aquellos cambios que has implementado en la rama secundaria a la principal?, para ello tenemos el comando “merge”.
Para ello, primero tendrás que encontrarte en la rama principal o “main”, una vez nos encontramos ahí, debemos de utilizar el comando “merge” con la rama que queremos fusionar.
Al igual que ocurría cuando lanzábamos el comando “commit”, necesitarás añadir un mensaje.
Por lo que el proceso sería de la siguiente forma, utilizando el ejemplo anterior:
git checkout master
git branch
git merge rama 2 -m “mensaje que queremos añadir”
Una vez que hagamos este proceso haríamos “commit”, para almacenar los cambios realizados.
Cuando trabajamos con Git, nos podemos encontrar con dos conflictos básicos:
¿Cómo puedes identificar de qué tipo de error se trata? Para cada uno de estos casos, aparecerá un mensaje:
¿Qué puedes hacer en cada uno de estos casos?
git checkout
, git commit
o git reset
git reset
o git merge –abort
¿Quieres saber cómo trabajar con otros colaboradores y cómo compartir tus repositorios en la nube? En este apartado te explicaremos cómo.
Todo el proceso que hemos visto ahora lo hemos enfocado a la creación de repositorios locales, pero ¿sabías que puedes obtener acceso a otros repositorios en línea desarrollados por otras personas y desde los cuáles puedes trabajar nuevas funcionalidades?
Una de los repositorios remotos más conocidos y usualmente el más utilizado es GitHub.
Los repositorios remotos siempre vendrán dados en forma de URL.
El primer paso a realizar cuando queremos trabajar con un repositorio remoto es crearlo y después clonarlo en nuestro directorio o espacio de trabajo local, para ello utilizaremos lo siguiente:
git clone <url que hemos copiado>
Una vez realizados los cambios qué queramos dentro de este, es donde entran en juego los comandos “push” y “pull” .
Una vez que tenemos los cambios realizados y queremos enviarlos al repositorio remoto, utilizaremos el comando “git push” lo que hará que podamos ver que se han añadido los datos que queremos a nuestro repositorio remoto.
En el caso del comando “git pull” es útil, cuándo trabajamos de forma colaborativa con otros desarrolladores, de esta forma, cuándo lo lanzamos en nuestra terminal, conseguiremos los datos del repositorio remoto, en los que podamos realizar los cambios o las fusiones necesarias.
Cómo sabemos, el trabajo en equipo es esencial para el futuro laboral, siendo una de las habilidades más demandadas por las empresas.
Pero para ello debemos aprender a utilizar las herramientas para obtener los mejores resultados.
En el caso de Diseño, el sistema de control de versiones con Git será tu solución.
Aquí te hemos podido enseñar los primeros pasos, pero tu aprendizaje en Git sólo acaba de empezar.
Si quieres sacarle el máximo partido a esta herramienta, te dejo por aquí el curso de Git desde cero de OpenWebinars.
¡Empieza a observar las ventajas de usar Git en tus próximos proyectos!
También te puede interesar
En este taller aprenderás a utilizar el framework de git que viene incluído dentro del IDE de Android...
En este taller veremos como descargar y desplegar Bitbucket pero haciéndolo portable para que te lo puedas llevar...