Si ha investigado o experimentado con la codificación para WordPress, puede que haya oído hablar de git o GitHub. Estas herramientas pueden ser muy útiles para los desarrolladores, pero determinar lo que hacen y las diferencias entre ellas puede ser confuso.

Afortunadamente, una vez que entienda las funciones tanto de git como de GitHub, podrá ponerlas en marcha para agilizar su proceso de desarrollo. Incluso puede integrar los dos y usarlos en conjunto.

En este post, vamos a resumir los usos de git y GitHub. También explicaremos quién es el propietario de cada plataforma, y discutiremos cómo usarlas conjuntamente para el control de versiones y el desarrollo colaborativo.

¿Prefieres ver el video?

Una Introducción a git y al Control de Versiones

Primero, echemos un vistazo a git. Este es un software de control de versiones para desarrolladores:

página web de git
página web de git

El control de versiones se refiere al proceso de guardar diferentes archivos o «versiones» a lo largo de las diferentes etapas de un proyecto (compruebe también: control de versiones de WordPress). Esto permite a los desarrolladores hacer un seguimiento de lo que se ha hecho y volver a una fase anterior si deciden que quieren revertir algunos de los cambios que han hecho.

Esto es útil por varias razones. Por ejemplo, facilita la resolución de errores y la corrección de otros errores que puedan ocurrir durante el desarrollo. También puede anotar los cambios en cada versión, para ayudar a cualquier miembro del equipo a mantenerse al día sobre lo que se ha completado y lo que aún queda por hacer.

A diferencia de la mayoría de los otros sistemas de control de versiones (VCS), git almacena cada versión guardada como una ‘instantánea’ en lugar de una lista de los cambios realizados en cada archivo. Puede hacer referencia a antiguas instantáneas siempre que lo necesite y las nuevas instantáneas se crean cuando se modifica el proyecto.

Git también le permite «empujar» y «tirar» de los cambios hacia y desde las instalaciones de otros ordenadores. Esto lo convierte en lo que se conoce como ‘Sistema de control de versiones distribuido’, y permite que varios desarrolladores trabajen en el mismo proyecto.

Sin embargo, hay algunos inconvenientes para manejar el desarrollo de esta manera. Como el software local está instalado en su máquina individual, git no puede leer las ediciones que otros desarrolladores puedan estar haciendo en tiempo real. Esto significa que si usted y un compañero de equipo están trabajando en un proyecto simultáneamente, no podrán ver el trabajo del otro.

Así que si no está completamente seguro de cuándo los miembros del equipo trabajarán en su proyecto, git es mejor para el uso individual. De esta manera, puede evitar conflictos o que alguien más anule accidentalmente su código.

La Diferencia Entre git y GitHub

GitHub facilita la colaboración con git. Es una plataforma que puede mantener repositorios de código en almacenamiento basado en la nube para que varios desarrolladores puedan trabajar en un solo proyecto y ver las ediciones de cada uno en tiempo real:

página de GitHub
página de GitHub

Además, también incluye funciones de organización y gestión de proyectos. Puede asignar tareas a individuos o grupos, establecer permisos y roles para los colaboradores y usar la moderación de comentarios para mantener a todos en la tarea.

Además, los repositorios de GitHub están disponibles públicamente. Los desarrolladores de todo el mundo pueden interactuar y contribuir al código de los demás para modificarlo o mejorarlo, lo que se conoce como «codificación social». En cierto modo, esto hace que GitHub sea un sitio de redes para profesionales de la web.

Hay tres acciones principales que puede realizar cuando se trata de interactuar con el código de otros desarrolladores en GitHub:

  • Bifurcación: El proceso de copiar el código de otra persona del repositorio para modificarlo.
  • Pull: Cuando haya terminado de hacer cambios en el código de otra persona, puede compartirlos con el propietario original a través de una «solicitud pull».
  • Fusión: Los propietarios pueden añadir nuevos cambios a sus proyectos a través de una fusión, y dar crédito a los contribuyentes que los han sugerido.

Especialmente para los nuevos desarrolladores que están tratando de construir sus currículums, esta puede ser una gran oportunidad para ganar algo de experiencia. GitHub le permite compartir proyectos en su perfil y mantiene una línea de tiempo de todos aquellos en los que has contribuido.

Para resumir la diferencia entre git vs GitHub:

  1. git es un software de VCS local que permite a los desarrolladores guardar instantáneas de sus proyectos a lo largo del tiempo. Generalmente es mejor para uso individual.
  2. GitHub es una plataforma basada en la web que incorpora las características de control de versiones de git para que puedan ser utilizadas de forma colaborativa. También incluye características de gestión de proyectos y equipos, así como oportunidades para la creación de redes y la codificación social.

Entendiendo GitHub vs GitLab

GitHub no es el único repositorio git que puede considerar si está buscando colaborar en un proyecto de desarrollo. GitLab es otra plataforma muy similar que también vale la pena ver:

Página de GitLab
Página de GitLab

Al igual que GitHub, GitLab le permite almacenar código y usar las capacidades de control de versiones de git. Sin embargo, también proporciona permisos de usuario más matizados e incluye una integración continua (CI) incorporada. Esto elimina la necesidad de las solicitudes de extracción utilizadas en GitHub.

Dicho esto, GitLab todavía no es tan popular como GitHub. Con 40 millones de usuarios, GitHub ofrece muchas más oportunidades para la creación de redes, la codificación social e incluso para aprender de otros profesionales más experimentados en su campo.

En resumen, ambas plataformas son útiles, pero para situaciones ligeramente diferentes. Si no está interesado en trabajar con desarrolladores fuera de su equipo, GitLab puede ayudarte a acelerar un poco su flujo de trabajo. Sin embargo, GitHub puede ser la mejor ruta para aquellos que buscan crecer en sus carreras.

La Propiedad y el Costo de git vs GitHub

Dado que están tan estrechamente relacionados, tendría sentido que git y GitHub fueran propiedad de la misma empresa. Por el contrario, git es un software de código abierto, mientras que GitHub es propiedad de Microsoft.

Las plataformas de código abierto – incluyendo git y WordPress – son gratuitas de usar, modificar y distribuir.

El modelo de precios de GitHub es diferente, pero proporciona un interesante plan gratuito. De hecho, todas las características principales de GitHub son gratuitas para todos (en el pasado, el plan Individual Pro costaba 7 dólares al mes). En el caso de los equipos, el precio comienza en 4 dólares por usuario y mes. También puedes buscar las opciones de precios de Enterprise para grupos más grandes que necesiten funciones más avanzadas.

¿Cómo Integrar git y GitHub? (en 5 pasos)

Para poder usar git y GitHub juntos para el control de versiones y la colaboración, hay algunos pasos que tendrá que dar. Echemos un vistazo a cómo funciona ese proceso.

Es importante tener en cuenta que tiene que usar git para aprovechar las ventajas de GitHub, así que querrá refrescar sus habilidades con el primero antes de intentar integrar los dos. También hemos incluido algunas instrucciones básicas a continuación para que pueda empezar.

Si ya está usando Git, puede saltar al paso 2. Por otro lado, los nuevos en este software de control de versiones necesitarán instalarlo y añadir algún código antes de seguir adelante.

Paso 1: Instalar git y Añadir un Repositorio

Primero, descargue el software git para su Sistema Operativo (OS):

Descargar git
Descargar git

Entonces tendrá que ejecutar el instalador. Este proceso variará dependiendo del sistema operativo que esté utilizando. Entonces puedes configurar git usando su interfaz de línea de comandos.

Una vez que esté en funcionamiento, hay algunos términos con los que querrá familiarizarse cuando empiece a usar el software:

  • Repositorio: La ubicación del archivo donde se almacena su proyecto.
  • Comprometerse: El comando utilizado para guardar los nuevos cambios en su proyecto en el repositorio.
  • Escenario: Antes de que puedas confirmar los cambios en Git, necesitas prepararlos -esto le da la oportunidad de preparar su código antes de añadirlo formalmente a su proyecto.
  • Rama: La parte de su proyecto que está desarrollando activamente.

Para conectar git a GitHub, necesitarás añadir un repositorio y hacer al menos una confirmación. Entonces tendrá suficiente de su proyecto establecido para empezar a trabajar en GitHub.

Paso 2: Crear una cuenta GitHub

A continuación, necesitarás una cuenta GitHub. Puede inscribirse en uno de ellos de forma gratuita o invertir en un plan de pago:

precios de gitanos
Opciones de precios de la cuenta de GitHub

Una cuenta gratuita funciona bien para los nuevos desarrolladores que buscan perfeccionar sus habilidades. Un plan profesional se adapta mejor a los freelancers y a los codificadores avanzados, mientras que las agencias querrán invertir en un plan de equipo para acceder a más herramientas de gestión de proyectos y de comunicación.

Además, GitHub ofrece descuentos para organizaciones sin fines de lucro, educadores y estudiantes.

Paso 3: Añadir un Repositorio GitHub a su cuenta

Después de que haya creado y configurado su cuenta, necesitará crear un repositorio en GitHub donde pueda almacenar su proyecto cuando lo mueva desde git. Puede hacerlo haciendo clic en el enlace correspondiente de la barra lateral izquierda:

Crear un repositorio en GitHub
El enlace «Crear un repositorio» en GitHub

Entonces, tendrá que elegir un nombre para su repositorio:

nuevo nombre del repositorio
Nombrar un nuevo repositorio GitHub

También puede decidir si quiere que el repositorio sea público, para que otros usuarios de GitHub puedan encontrarlo y contribuir a él, o si quiere mantenerlo privado.

De cualquier forma, ya que va a utilizar un proyecto existente, asegúrese de dejar la casilla Inicializar este repositorio con una casilla LÉAME desmarcada.

Paso 4: Empujar un Repositorio a GitHub

A continuación, tendrá la opción de añadir código a su repositorio de unas cuantas formas diferentes.

Como ya ha configurado su repositorio git, puede usar la opción de empujar un repositorio existente desde la línea de comandos:

push repositorio existente
Empujar un repositorio existente desde la opción de línea de comandos

El icono del portapapeles a la derecha le permite copiar los comandos que se enumeran aquí, de modo que puede pegarlos rápidamente en su interfaz de línea de comandos preferida para crear su repositorio GitHub.

Una vez hecho esto, actualice su página de GitHub:

depósito de gitanos
Un nuevo repositorio GitHub listado en la página de la cuenta de usuario

Ahora debería poder ver su repositorio en GitHub. A partir de ahí, puede empezar a hacer cambios en su proyecto en línea.

También es posible enviar y fusionar solicitudes de extracción, y utilizar cualquier otra herramienta incluida en su plan.

Paso 5: Retirar los Cambios a git

Aunque puede ver todos los cambios que usted y otros han hecho en su proyecto en GitHub, la plataforma no tiene acceso directo a los archivos de su ordenador. Para mantener su proyecto actualizado en su computadora, necesitará hacer sus ediciones a través de git.

Para ello, simplemente introduzca git pull origin master en su interfaz de línea de comandos. Esto debería actualizar sus archivos para que todo esté sincronizado en todas las iteraciones de su proyecto.

Resumen

Aunque entender la diferencia entre git y GitHub puede ser un poco confuso al principio, una vez que se entienden los fundamentos, ambos son muy valiosos para el desarrollo.

Para integrar git y GitHub, debe seguir estos pasos:

  1. Instale git, añada un repositorio y cree una confirmación.
  2. Crear una cuenta GitHub.
  3. Añade un repositorio GitHub a su cuenta.
  4. Presione un compromiso con GitHub.
  5. Vuelva a poner sus cambios en marcha.

Si está trabajando con un equipo para construir un sitio web, el control de versiones y el compartir pueden ser vitales.