Bienvenido a este tutorial, en el que veremos el versionado y el trabajo en equipo en el desarrollo de software. Aprenderás a configurar un repositorio Git privado y sincronizarlo con un directorio SSH de destino. Esta configuración es ideal para desarrollar plugins de WordPress, temas u otros componentes de código donde un historial de edición detallado y la colaboración en equipo son cruciales.
Dominar Git y SSH: Una guía para convertirse en un profesional de la gestión de código - WooCommerce & WordPress Developer Hannover
¡Descubre el mundo de Git y SSH! Aprende a crear tu propio repositorio Git, a sincronizarte con un servidor SSH y a trabajar eficazmente en equipo.
Proveedor del curso: Persona
Nombre del proveedor del curso: Saskia Teichmann
URL del proveedor del curso: https://www.saskialund.de/
Modo del curso: En línea
Trabajos del curso: PT30M
Tipo de curso: Gratis
Preparativos para esta guía
Antes de empezar, asegúrate de que tu configuración local cumple los siguientes requisitos:
- Git instaladoCompruebe si Git está instalado en su sistema y en el servidor remoto deseado. Si no es así, puede descargarlo desde git-scm.com descargar e instalar.
- Acceso SSHAsegúrate de que tienes acceso SSH al servidor con el que quieres trabajar.
- Editor de textoDebe tener instalado un editor de texto básico como Nano, Vim o un programa similar.
- Conexión a InternetSe requiere una conexión estable a Internet para interactuar con los repositorios remotos.
Crear un repositorio Git privado y local
En primer lugar, crea tu propio repositorio Git privado. Este repositorio sirve como punto de contacto central donde se almacenan todas las versiones de tu código.
git in MiProyecto # Inicializa un nuevo repositorio Git llamado "MiProyecto".
cd MiProyecto # Cambia al directorio recién creado
git add . # Añade todos los archivos actuales al repositorio
git commit -m "First commit" # Crea un 'commit' con el mensaje 'First commit'
Sincronizar el repositorio Git con un directorio de destino SSH
Aquí sincronizas tu repositorio Git local con un directorio remoto a través de SSH. Esto te permite almacenar de forma segura tu trabajo en un servidor remoto y compartirlo con los miembros del equipo.
ssh root@ihr-server.com "mkdir /ruta/a/directorio-objetivo" # Crea un directorio en el servidor
ssh root@ihr-server.com "cd /ruta/a/directorio-objetivo; git init --bare" # Inicializa un repositorio Git 'bare' en el servidor
git remote add origin ssh://root@ihr-server.com/pfad/zum/zielverzeichnis # Vincula tu repositorio local con el repositorio remoto. El repositorio remoto se gestiona ahora con el identificador "origin". También puedes utilizar un identificador diferente.
git push origin master # Envía tus cambios locales al repositorio remoto
Trabajar con GitHub
Si prefieres trabajar con GitHub o quieres conectar un repositorio remoto adicional, también puedes conectar tu repositorio local a un repositorio de GitHub:
ssh root@ihr-server.com "mkdir /ruta/a/directorio-objetivo" # Crea un directorio en el servidor
ssh root@ihr-server.com "cd /ruta/a/directorio-objetivo; git init --bare" # Inicia un repositorio Git 'bare' en el servidor
git remote add origin ssh://root@ihr-server.com/pfad/zum/zielverzeichnis # Vincula tu repositorio local con el repositorio remoto
git push origin master # Envía tus cambios locales al repositorio remoto
Envío automático de versiones (publicaciones) al destino SSH
Automatice el despliegue de sus cambios en el servidor con un gancho post-recepción:
ssh root@ihr-server.com # Se conecta al servidor
cd /ruta/al/directorio-destino # Cambia al directorio de destino
nano hooks/post-receive # Crea o edita el script hook 'post-receive
Inserte el siguiente script para aplicar automáticamente los cambios al directorio de trabajo en el servidor:
#!/bin/sh
GIT_WORK_TREE=/ruta/a/directorio_de_trabajo git checkout -f # Actualiza el directorio de trabajo en el servidor con los últimos cambios
chown -R nombreusuario:nombregrupo /ruta/a/directorio_de_trabajo # Cambia el propietario de los archivos del directorio de trabajo
chmod +x hooks/post-receive # Hace ejecutable el script
Opcional:
chown -R 33:33 /ruta/a/directorio_de_trabajo # Asegura que los archivos y directorios en el directorio de trabajo sean asignados a un usuario y grupo de usuarios específicos. Aquí utilizo 33:33 porque estos son los ID de mi usuario del servidor web y del grupo de usuarios del servidor web www-data.
Arrastre los cambios desde el destino SSH al repositorio local
Transfiera los cambios realizados en el servidor de destino SSH a su repositorio local:
ssh root@ihr-server.com # Se conecta al servidor
cd /ruta/al/directorio-de-trabajo # Cambia al directorio de trabajo en el servidor
git add . # Añade todos los archivos nuevos o modificados al commit
git commit -m "Descripción de los cambios" # Crea una nueva confirmación con la descripción de los cambios.
git push origin master # Envía los cambios al repositorio remoto
git pull origin master # Extrae los últimos cambios del repositorio remoto a tu repositorio local
Aplicar los cambios del repositorio remoto de GitHub al repositorio local
Por último, aprenderás a integrar eficazmente en el repositorio local los cambios realizados en el repositorio remoto de GitHub. Esto es especialmente útil si trabajas en un equipo en el que varias personas están trabajando en diferentes partes de un proyecto al mismo tiempo, como cuando se desarrolla software complejo o se crea en colaboración un tema o plugin de WordPress. Al actualizar regularmente tu repositorio local, te aseguras de estar siempre al día con el trabajo colaborativo más reciente.
git fetch origin master # Obtiene la información más reciente del repositorio de GitHub
git merge origin/master # Fusiona los cambios del repositorio de GitHub en tu repositorio local.
Conclusión: Crecer juntos compartiendo y aprendiendo
Hemos llegado al final de esta guía, y espero que encuentres útiles estos conocimientos sobre el uso de Git y SSH. Recuerda que dominar estas herramientas no sólo mejorará tus habilidades individuales de desarrollo de software, sino que también allanará el camino para proyectos de equipo más eficientes y armoniosos.
Te invito a compartir tus ideas, experiencias o preguntas en los comentarios. ¿Has tenido alguna experiencia con Git y SSH? ¿Hay algún problema concreto que hayas encontrado o algún consejo que quieras compartir con la comunidad? Tus comentarios no sólo son valiosos para mí, sino también para otros lectores.
Su contribución podría ser la clave que ayude a otra persona a resolver un problema o descubrir una nueva perspectiva. ¡Estoy deseando saber de ti!
Hasta la próxima, ¡sigue siendo curioso e involúcrate en el mundo de la codificación! 🌟👨💻👩💻
0 comentarios