Iniciar sesión
Empezar

Blog de Easy Digital Downloads

Tutoriales, consejos y recursos de WordPress para ayudarte a hacer crecer tu negocio

Ilustración: Logo de Git y ramas

Cómo trabajar con Git o GitHub para productos digitales

Última actualización:

imagen del autor
Por Joe Wells
imagen del reseñador
REVISADO Por Chris Klosowski Presidente

¿Estás usando Git o GitHub para administrar tus productos digitales? Si no lo estás haciendo, deberías considerarlo seriamente.

Git y GitHub son esenciales para el éxito de muchas de las empresas de software y productos digitales de más rápido crecimiento en la actualidad.

En este artículo te daremos un curso intensivo rápido sobre qué son Git y GitHub. También te mostraremos cómo pueden ayudarte a hacer crecer tu negocio.

Vamos a ello:


¿Qué es Git?

Logo de Git

Git es un sistema de control de versiones inventado por Linus Torvalds y Junio C Hamano. ¡Linus también es el principal inventor/desarrollador de Linux! 🙇

Nota al margen: Linux es el sistema operativo de código abierto que ejecuta más del 95% de todos los servidores web (incluidos los nuestros) y millones de computadoras utilizadas por desarrolladores, aficionados y constructores de todo el mundo. Así que Linus es un tipo genial.

Git rastrea cada pequeño cambio dentro de un conjunto de archivos.

El seguimiento de cambios ayuda a los equipos a colaborar en la creación de productos digitales y software. Permite que los miembros del equipo de todo el mundo trabajen juntos. Git les permite a estos equipos no sobrescribir los cambios de los demás y romper cosas.

Aquí tienes una lista útil de términos y definiciones para ayudarte a comprender el vasto mundo de Git y el control de versiones.

Términos y definiciones de Git

🤔 Términos de Git🤓 Obtener definiciones
VCSUn sistema de control de versiones
GitEl sistema de control de versiones que puede ejecutarse en varios sistemas operativos, creado en 2005
Subversion (SVN)Un sistema de control de versiones separado y más antiguo administrado por la Apache Software Foundation, iniciado en 2000
GitHubUna empresa con fines de lucro que ofrece un servicio de alojamiento de Git en la web. Otros servicios similares incluyen BitBucket y GitLab
Repositorio / RepoUna colección de archivos que se configura y luego se rastrean los cambios. También se llama base de código. Por ejemplo, un repositorio de plugins de WordPress tendría los archivos de código fuente PHP, Javascript, CSS y HTML que componen el plugin, todos siendo rastreados.
ReadmeUn documento que puedes incluir en un repositorio de GitHub, generalmente (readme.md) que explica qué es el repositorio o cómo usar el producto digital dentro
MD / MarkdownUn formato para escribir texto con un mínimo de caracteres de código o marcado, utilizado para crear archivos de texto con estilo en un repositorio. Por ejemplo; para poner una palabra en cursiva en markdown, deberías añadir guiones bajos antes y después de ella, así: '_cursiva_'.
RamaCrear otra copia del producto digital de software para probar cosas nuevas (correcciones o nuevas funcionalidades). Más tarde puedes fusionar la rama de vuelta a la rama original/maestra con una solicitud de extracción (pull request).
CommitCuando haces un cambio y lo guardas en una rama.
ForkCuando creas una copia de un producto digital o software para hacer uno completamente nuevo. Piensa en ello como una rama permanente cortada del árbol para hacer crecer una nueva. Sé que la analogía del árbol solo llega hasta cierto punto.
Solicitud de extracciónCuando alguien hace una contribución (cambio, mejora) en una rama y solicita que se incorpore a la rama principal de un repositorio. Cuando esto se hace, alguien tiene que asegurarse de que no rompa nada en la rama maestra. Si se aprueba, se convierte en parte de la rama principal.
Línea de comandosUna interfaz solo de texto para ejecutar comandos en tu computadora. La mayoría de nosotros usamos la GUI (ver abajo). A menudo se le llama 'Símbolo del sistema' en Windows o 'Terminal' en macOS.
GUIInterfaz gráfica de usuario, la interfaz visual de Windows o macOS que la mayoría usamos al trabajar en nuestro sistema operativo. Diferente de la línea de comandos o terminal donde solo trabajas con texto.
APIInterfaz de programación de aplicaciones, una forma estandarizada para que dos programas/aplicaciones se 'comuniquen' entre sí.

Línea de comandos

Git es una herramienta de línea de comandos. La línea de comandos es una forma de trabajar con el sistema operativo de tu computadora sin una interfaz gráfica de usuario (GUI). No es para los débiles de corazón o los principiantes totales. Tendrás que leer un poco para aprender a usarla.

Captura de pantalla: git ejecutándose en la línea de comandos

🤓 Haz clic aquí para aprender sobre comandos de git

Cuando trabajas con git en la línea de comandos, tienes que escribir pequeños códigos para hacer cosas. Estos códigos se llaman comandos de git. Tienes que saber el texto exacto para escribir, sin errores tipográficos.

🤓 Haz clic aquí para aprender cómo instalar git con la línea de comandos

Si no quieres lidiar con la línea de comandos, estás en buena compañía. Hay muchas empresas que ofrecen aplicaciones y servicios que facilitan el trabajo con git. Ahí es donde entra GitHub.


¿Qué es GitHub?

Logo de GitHub

GitHub es una empresa que proporciona una solución de control de versiones git basada en la nube. Al alojar colecciones de archivos (repositorios git) en un servidor web, puedes hacer un montón de cosas geniales.

  • Colabora con cualquiera (o incluso con el público)
  • Haz un seguimiento de las solicitudes de funciones con incidencias (issues), estas proporcionan un historial detallado de las discusiones y decisiones que llevaron a cada cambio en el software.
  • Gestión de proyectos; rastrea errores, ideas, mejoras futuras de manera organizada.
Captura de pantalla: trabajando con issues de GitHub
Una Incidencia de GitHub

Git ≠ GitHub

Git es un framework de control de versiones de código abierto.

GitHub es una empresa de software y SaaS (software como servicio). Fue adquirida por Microsoft en 2018. Utiliza el framework de VCS git como la columna vertebral de su producto.

GitHub es la solución de software más grande basada en git, pero existen muchas otras que son potentes y populares por derecho propio. Aquí están algunas de las plataformas/servicios en línea basados en git más populares:

Cada uno de estos servicios de alojamiento de git tiene planes de precios gratuitos y de pago.

A menos que tengas una razón para no hacerlo, si planeas trabajar con git, querrás hacerlo en uno de estos servicios de alojamiento. Luego, clonas repositorios de git en tu computadora y mantienes tu trabajo sincronizado con los repositorios almacenados en internet. 

Cuando trabajas con un repositorio en tu computadora (llamado tu 'local'), puedes usar la línea de comandos. O cada uno de estos servicios de alojamiento tiene una aplicación de escritorio que puedes usar y que tiene una GUI (interfaz gráfica de usuario).


¿Por qué usar Git o GitHub?

Gráfico: ¿Por qué usar git o GitHub?

Usas git, o más probablemente una de las plataformas en línea basadas en git, populares y fáciles de usar (GitHub, BitBucket o GitLab) porque te permiten administrar tu producto digital o software sin perder la cabeza. 🤪

Al desarrollar un producto digital o software, realmente ayuda a hacer un seguimiento de los cambios. Y ayuda a saber cuándo y por qué hiciste esos cambios. De lo contrario, cuando algo se rompe o agregas una nueva función, tienes un desastre en tus manos.

¡No sabrás qué se arregló, cuándo se arregló, por qué o cómo!

¿Git es solo para software?

No. Git es excelente para el desarrollo de software. El control de versiones es muy importante y ahorra mucho tiempo allí. Pero puedes usarlo para cualquier cosa en la que quieras rastrear cambios. La gente lo usa para rastrear cambios en el contenido de libros, o incluso para proyectos de diseño gráfico.


Tu Producto Digital Sin Git

Gráfico: Tu producto digital sin Git

Primero, así es como se ve si no usas algún tipo de sistema de control de versiones.

Pretendamos que estás desarrollando un plugin de WordPress. Estás editando un archivo llamado 'user-fucntions.php'.

  • ¿Qué pasa cuando quieres cambiar cosas?
  • ¿Qué pasa si necesitas recordar qué/dónde/cuándo cambiaste algo?

Se pone feo muy rápido. Especialmente si trabajas en equipo. Y aún más si ese equipo está distribuido (remoto, en todo el mundo). Solo mira algunas 'soluciones' que la gente todavía usa o usó en el pasado...

Comentarios de Escritura de "Solución"

Puedes intentar hacer un seguimiento de lo que cambias, por qué y cuándo, dejando pequeños comentarios en el código. Todos los formatos de código tienen una forma de dejar texto en ellos que la computadora/software ignora. A esto se le llama comentarios.

Esto podría funcionar para uno o dos pequeños cambios. Pero puede volverse una locura muy rápido.

Captura de pantalla: programación de vaquero - montones de comentarios
Todo esto por 2 líneas de código real

¡Mira todos esos comentarios! Si tienes miles o decenas de miles de líneas de código. Se convierte en un verdadero dolor de cabeza averiguar qué es qué. También puede hacer que los archivos sean enormes, e incluso que carguen más lento, haciendo que el software o el sitio web funcionen más lento o incluso tengan errores.

Copias de Archivos de "Solución"

Puedes intentar hacer copias del archivo a medida que avanzas.

Nota / Consejo Pro – Si haces esto con archivos PHP, el desastre podría ocurrir. El servidor podría intentar ejecutar comandos duplicados de la horrible pila de archivos PHP que dejaste en tu servidor. Al menos renombra la extensión del archivo a algo que no sea '.PHP' como se demuestra aquí. Confía en mí.

Imagina lo que sucede cuando empiezas a guardar copias antiguas de archivos para un proyecto con docenas o cientos de archivos. Será un desastre colosal. Tendrás más archivos basura que archivos activos reales.

Captura de pantalla: programación de vaquero - pilas de archivos
Esta pila de archivos no terminará bien

Codificación de Vaquero 🤠

Lo que acabo de describir se conoce a menudo como codificación de vaquero. Significa que tomas las cosas en tus propias manos y arreglas rápidamente un problema bajo presión. Eso está bien cuando funciona. Pero usualmente resulta en un gran desastre o una solución temporal que conduce a un gran desastre eventual más tarde.

Puedes ver cómo depender de toneladas de comentarios o atascar tu servidor o computadora con copias antiguas renombradas de archivos conducirá a un gran desastre. Si estás haciendo esto a una escala grande, o trabajando con otros, es solo una pérdida de tiempo.

Te ralentizará. Conducirá a errores. Obstaculizará tu capacidad para crear buenos productos para tus clientes.

DevOps 👍

En lugar de codificar como vaquero, los emprendedores inteligentes y los propietarios de productos digitales se esfuerzan por construir un flujo de trabajo fluido. Otra forma de decir eso es usar operaciones de desarrollo fluidas (o DevOps). Devops es un término más nuevo que describe el proceso de construir productos digitales en un flujo de trabajo eficiente.

El objetivo es hacer que la implementación de mejoras en la funcionalidad sea más rápida y fluida.

DevOps
Development de software+ Operaciones de sistemas de información

Tu producto digital con Git

Gráfico: Tu producto digital con Git


Ahora, te mostraremos lo poderoso que es git; en nuestros ejemplos a continuación usaremos una cuenta de GitHub.

En GitHub puedes construir tu software y colaborar con personas de todo el mundo (equipos distribuidos). ¡Incluso puedes construir en público! Esto es software de código abierto, es software construido en público.

Cualquiera puede observar. Cualquiera puede contribuir. Eso conduce a una rápida innovación y mejora.

¿Quieres pruebas de que funciona? WordPress es un proyecto de código abierto. Miles, si no decenas de miles de personas han contribuido a él. ¡Ahora impulsa el 43% de internet! 🤯

Repositorio de Muestra

Easy Digital Downloads se construye en público en GitHub. Consulta nuestro repositorio aquí.

EDD es un producto digital grande y complicado. Así que para un ejemplo más accesible, usemos este repositorio de muestra que acabo de configurar.

Este producto digital de ejemplo a la venta aquí es un archivo simple de gráfico vectorial (SVG). Es un círculo azul. Pretende que es un gráfico que alguien realmente compraría.

Para seguir, revisa el repositorio de ejemplo, o crea el tuyo.

Para crear el tuyo, configura una cuenta gratuita de GitHub y luego, en el menú superior, haz clic en el botón + y después en New Repository.

Captura de pantalla: Agregar nuevo repositorio de GitHub

🔍 Haz clic aquí para ver nuestro repositorio de ejemplo

Usando el poder de git, alojado en GitHub, podemos llevar un registro de cada pequeño cambio que hemos hecho al software durante toda la vida del producto. Aquí está nuestro pequeño repositorio de ejemplo.

Captura de pantalla: Repositorio de ejemplo EDD 1 de GitHub

Mira aquí cómo cambiamos el ancho del trazo del contorno del círculo de 41.67 píxeles a 20 píxeles.

Captura de pantalla: Commit de ejemplo en repositorio de ejemplo

Los Beneficios de Git

Ahora, cada cambio o mejora que hagamos en este producto digital será rastreado. Sabemos qué, cuándo, cómo y por qué se hizo cada cambio.

El código fuente de este producto digital se está desarrollando públicamente. Cualquiera puede contribuir. También puedes hacer que un repositorio de GitHub sea privado y solo permitir que colaboren las personas que desees.

Puedes usar los issues de GitHub para discutir todos los cambios y posibles cambios. Los issues de GitHub te permiten referenciar y enlazar archivos de código, o commits individuales para permitir una comunicación detallada.

Captura de pantalla: trabajando con issues de GitHub

Este flujo de trabajo de git es mucho mejor y más eficiente que la codificación improvisada. Imagina esto cuando se escala a un proyecto más grande.

Esto supera a añadir toneladas de comentarios a archivos de código individuales. Eso solo lleva a un desastre y problemas futuros. Esto es mejor y menos propenso a errores que tener pilas de copias antiguas de archivos esparcidas, haciendo todo desordenado o incluso representando un riesgo de seguridad.

🔑 Git y GitHub (o BitBucket o GitLab) son cruciales para construir productos digitales exitosos. Especialmente software.

Git permite una buena gestión de proyectos y devops simplificados. Puedes:

  • Aumentar la eficiencia de tu flujo de trabajo
  • Trabajar con equipos distribuidos/remotos
  • Trabajar en diferentes momentos, en diferentes zonas horarias
  • Proporcionar transparencia
  • Generar confianza
  • Evitar errores costosos

Cómo Usar Git al Vender Productos Digitales

Gráfico: Cómo trabajar con Git o GitHub al vender productos digitales

Si quieres vender software o productos digitales, deberías usar WordPress y Easy Digital Downloads (EDD).

Logotipos de WordPress + Easy Digital Downloads

WordPress es el constructor de sitios web más popular y potente. Puede crecer y adaptarse para hacer cualquier cosa que necesites.

EDD es la mejor manera de vender productos digitales. Más de 50,000 empresas confían en él para hacer precisamente eso.

Puedes empezar con EDD gratis. La versión gratuita para siempre de Easy Digital Downloads incluye:

  • Control total sobre los precios
  • Carrito de compras
  • Opciones de pago flexibles
  • Códigos de descuento
  • Gestión de clientes (CRM básico)
  • Informes de comercio electrónico
  • Integración con Stripe y/o PayPal
  • Marca blanca (control total sobre la marca)

¿Qué estás esperando ⁉️

Conectando Tus Productos Digitales a Git

EDD es gratuito. Sin embargo, para sacar el máximo provecho de EDD y Git, querrás comprar un pase All Access para obtener acceso a nuestras extensiones Git Download Updater y Software Licensing.

Instalar EDD, Software Licensing y Git Download Updater

Cuando EDD esté instalado en tu sitio, tendrás un nuevo elemento en el menú en el lado izquierdo de tu panel de WordPress llamado Downloads.

Captura de pantalla: nuevo elemento de menú Descargas

A continuación, instala Software Licensing y Git Download Updater. Haz clic aquí para aprender cómo instalar plugins una vez que tengas el pase All Access aquí.

Configuración de Conexión Git

Con esos plugins instalados te mostraremos cómo se ve la conexión de tu tienda con GitHub.

En tu panel de WordPress, ve a Descargas > Ajustes > Extensiones > Git Download Updater.

Verás una pantalla de configuración con instrucciones sobre cómo vincularte a GitHub.

Captura de pantalla: Configuración de EDD para Git Download Updater

Haz clic en el enlace ‘Crear una aplicación’ en el primer punto de la lista debajo de GitHub Updater.

Asegúrate de haber iniciado sesión en tu cuenta de GitHub. Serás dirigido a GitHub, donde podrás registrar una nueva Aplicación OAuth. Esto solo significa que le estás dando permiso a GitHub y a EDD para que se comuniquen entre sí a través de una API.

Se verá así:

Captura de pantalla: Configuración de GitHub, registrar una nueva aplicación OAuth

Le darás un nombre y una descripción a la aplicación OAuth, y luego ingresarás el nombre de dominio (URL) de tu sitio web en la configuración de URL de la página principal y URL de devolución de llamada de autorización.

Asegúrate de hacer clic en Registrar aplicación cuando hayas terminado de ese lado.

Tendrás la aplicación OAuth (o permisos creados para que EDD y GitHub interactúen y se comuniquen).

Copia el ID de cliente que te proporciona y pégalo en la configuración de ID de cliente de EDD. Haz lo mismo con los Secretos de cliente. Es posible que tengas que crear uno nuevo haciendo clic en ‘Generar un nuevo secreto de cliente’ para crear un nuevo código.

Captura de pantalla: Configuración de GitHub, obtener ID de cliente y secretos de cliente

Después de ingresar el ID de cliente y los Secretos de cliente, de vuelta en la página de configuración de EDD, presiona el botón Autorizar con GitHub.

Captura de pantalla: Configuración de EDD, agregar ID de cliente y secreto de cliente

Se cargará una página donde otorgas la autorización.

Captura de pantalla: Autorizar EDD y OAuth de GitHub

Luego, la página de configuración de EDD confirmará la conexión. Cuando sea exitosa, dirá: ‘Conectado a GitHub’. Asegúrate de hacer clic en Guardar cambios.

Captura de pantalla: Configuración de EDD conectada a GitHub

Ahora estás listo para vender tu producto digital impulsado por EDD, Software Licensing y Git Download Updater.


Comienza a vender tu producto digital con integración Git

Vamos a suponer que estoy vendiendo software, como un plugin de WordPress, en mi sitio web. Lo cual, dicho sea de paso, hacemos todos los días. EDD administra el sitio web de EDD.

Con el ejemplo a continuación, tenemos un sitio de WordPress con EDD, Software Licensing y Git Download Updater instalados.

Primero, configuramos el producto (llamado Descarga cuando se usa EDD). Haz clic aquí para una guía rápida sobre cómo configurar un producto. Le damos un nombre y una descripción al producto.

Captura de pantalla: Creando Descarga/Producto EDD con integración Git/GitHub | Agregar descripción

Le ponemos un precio.

Captura de pantalla: Creando Descarga/Producto EDD con integración Git/GitHub | Agregar precio

A continuación, habilitamos Software Licensing. Desplázate hacia el área llamada Licencias y marca la casilla etiquetada como ‘Marcar para habilitar la creación de licencias’. Establece el límite de activación, el número de versión y otras configuraciones básicas. Haz clic aquí para obtener una guía sobre cómo configurar tu producto con licencias de software.

Captura de pantalla: Creando Descarga/Producto EDD con integración Git/GitHub | Agregar licencia

Por último, vinculamos el producto a nuestro repositorio de GitHub. Desplázate a la sección llamada Archivos de descarga. Marca la casilla etiquetada como ‘Obtener descarga de un repositorio git’.

Luego, en Descargas de archivos seleccionamos:

  • El Repositorio Git, para este ejemplo es el repositorio de muestra que hemos estado usando llamado EDD Sample 1.
  • Seleccionamos la Etiqueta de versión v1.0.0
  • El Nombre del Archivo y la Carpeta del Plugin del producto que recibe el cliente se establecen en el repositorio de GitHub
  • Haz clic en el botón Fetch Now y cuando se conecte con éxito dirá ‘✅ Fetched’
Captura de pantalla: Creando Descarga/Producto EDD con integración Git/GitHub | Enlace al repositorio de GitHub

Ahora puedes implementar nuevas versiones de tu producto con una Release etiquetada de GitHub.

Usar EDD + Git o GitHub te permite estar organizado con tu flujo de trabajo. Trabajarás más rápido y evitarás errores. Tus clientes obtendrán mejores productos digitales.


Conclusión

Eso es git por ahora. Confiamos en que usar Git o GitHub para administrar tus productos digitales te ayudará a dirigir tu negocio. ¡Eso es porque una colaboración mejor y más rápida da como resultado productos mejorados para tus clientes!

Trabajarás más rápido. Y los clientes obtendrán mejores productos más rápido.

¡Gracias por leer!

Tenemos muchos recursos para creadores digitales como tú. ¿Sobre qué quieres aprender a continuación?

Asegúrate de seguirnos en Facebook y Twitter para obtener más recursos sobre la venta de productos digitales y WordPress.

Recursos Populares

Descargo de responsabilidad: Nuestro contenido es compatible con los lectores. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Ve cómo se financia EDD, por qué es importante y cómo puedes apoyarnos.

Experimenta ventas sin interrupciones con EDD

Gestiona tu tienda digital sin esfuerzo con potentes herramientas y transacciones seguras

¡Lo más popular en EDD ahora mismo!

Agrega más métodos de pago de PayPal y PayPal Fastlane en WordPress
Dale a tus clientes más formas de pagar con PayPal en WordPress
Easy Digital Downloads ahora te permite ofrecer más métodos de pago de PayPal en WordPress. Con una sola conexión, tus clientes pueden pagar…
Cómo pasar de un marketplace a tu propia tienda de WordPress
Cómo pasar de un marketplace a tu propia tienda de WordPress
Las tarifas de los mercados siguen aumentando y las reglas de las plataformas cambian constantemente. Pero tus clientes no tienen que pertenecer a nadie más. Aquí tienes…

¡Empieza a vender hoy mismo!

Únete a más de 50.000 dueños de tiendas inteligentes y empieza a usar la forma más fácil de vender productos digitales con WordPress.