{"id":3092,"date":"2023-11-21T12:10:14","date_gmt":"2023-11-21T11:10:14","guid":{"rendered":"https:\/\/www.saskialund.de\/?p=3092"},"modified":"2024-08-18T19:26:53","modified_gmt":"2024-08-18T17:26:53","slug":"master-git-y-ssh-una-guia-para-convertirse-en-un-profesional-de-la-gestion-de-codigo","status":"publish","type":"post","link":"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/","title":{"rendered":"Domina Git y SSH: gu\u00eda para convertirte en un profesional de la gesti\u00f3n de c\u00f3digo"},"content":{"rendered":"<p>Bienvenido a este tutorial, en el que veremos el versionado y el trabajo en equipo en el desarrollo de software. Aprender\u00e1s a configurar un repositorio Git privado y sincronizarlo con un directorio SSH de destino. Esta configuraci\u00f3n es ideal para desarrollar plugins de WordPress, temas u otros componentes de c\u00f3digo donde un historial de edici\u00f3n detallado y la colaboraci\u00f3n en equipo son cruciales.<\/p>\n\n\n\n<div class=\"wp-block-columns blindhelper is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\t\t\t<div id=\"rank-math-rich-snippet-wrapper\" class=\"\">\n\n\t\t\t\t\t\t<h5 class=\"rank-math-title\"> <\/h5>\n\t\t\t\t<div class=\"rank-math-review-image\">\n\t\t\t<img decoding=\"async\" src=\"https:\/\/isla-stud.io\/wp-content\/uploads\/2023\/11\/git-ssh-repo-leitfaden_blog-300x200.jpg\" alt=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">\n\t\t<\/div>\n\t\t<div class=\"rank-math-review-data\">\n\n\t\t\t<p><\/p>\n\t\t\n\t\t\t<p>\n\t\t\t<strong>Proveedor del curso: <\/strong>\n\t\t\tPersona\t\t<\/p>\n\t\t\n\t\t\t<p>\n\t\t\t<strong>Nombre del proveedor del curso: <\/strong>\n\t\t\tSaskia Teichmann\t\t<\/p>\n\t\t\n\t\t\t<p>\n\t\t\t<strong>URL del proveedor del curso: <\/strong>\n\t\t\thttps:\/\/www.saskialund.de\/\t\t<\/p>\n\t\t\n\t\t\t<p>\n\t\t\t<strong>Modo del curso: <\/strong>\n\t\t\tEn l\u00ednea\t\t<\/p>\n\t\t\n\t\t\t<p>\n\t\t\t<strong>Trabajos del curso: <\/strong>\n\t\t\tPT30M\t\t<\/p>\n\t\t\n\t\n\t\n\t\n\t\n\t\n\t\t\t<p>\n\t\t\t<strong>Tipo de curso: <\/strong>\n\t\t\tGratis\t\t<\/p>\n\t\t\n\t\n\t\n\t\n<\/div>\n\n\t\t\t<\/div>\n\t\t\n<\/div>\n<\/div>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u00cdndice<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #2c292e;color:#2c292e\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\" data-no-auto-translation=\"\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #2c292e;color:#2c292e\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\" data-no-auto-translation=\"\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Vorbereitungen_fur_diesen_Leitfaden\" >Preparativos para esta gu\u00eda<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Einrichten_eines_privaten_lokalen_Git-Repositories\" >Crear un repositorio Git privado y local<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Synchronisieren_des_Git-Repositories_mit_einem_SSH-Zielverzeichnis\" >Sincronizar el repositorio Git con un directorio de destino SSH<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Arbeiten_mit_GitHub\" >Trabajar con GitHub<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Automatisches_Pushen_von_Releases_Veroffentlichungen_auf_das_SSH-Ziel\" >Env\u00edo autom\u00e1tico de versiones (publicaciones) al destino SSH<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Anderungen_vom_SSH-Ziel_in_das_lokale_Repository_ziehen\" >Arrastre los cambios desde el destino SSH al repositorio local<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Anderungen_vom_GitHub_Remote_Repository_ins_lokale_Repository_ubernehmen\" >Aplicar los cambios del repositorio remoto de GitHub al repositorio local<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/isla-stud.io\/es\/howtos-anleitungen\/meistern-sie-git-und-ssh-ein-leitfaden-auf-dem-weg-zum-profi-im-code-management\/#Fazit_Gemeinsam_wachsen_durch_Teilen_und_Lernen\" >Conclusi\u00f3n: Crecer juntos compartiendo y aprendiendo<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vorbereitungen_fur_diesen_Leitfaden\"><\/span>Preparativos para esta gu\u00eda<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Antes de empezar, aseg\u00farate de que tu configuraci\u00f3n local cumple los siguientes requisitos:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Git instalado<\/strong>Compruebe si Git est\u00e1 instalado en su sistema y en el servidor remoto deseado. Si no es as\u00ed, puede descargarlo desde <a href=\"https:\/\/git-scm.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">git-scm.com<\/a> descargar e instalar.<\/li>\n\n\n\n<li><strong>Acceso SSH<\/strong>Aseg\u00farate de que tienes acceso SSH al servidor con el que quieres trabajar.<\/li>\n\n\n\n<li><strong>Editor de texto<\/strong>Debe tener instalado un editor de texto b\u00e1sico como Nano, Vim o un programa similar.<\/li>\n\n\n\n<li><strong>Conexi\u00f3n a Internet<\/strong>Se requiere una conexi\u00f3n estable a Internet para interactuar con los repositorios remotos.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Einrichten_eines_privaten_lokalen_Git-Repositories\"><\/span>Crear un repositorio Git privado y local<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>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\u00f3digo.<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">git in MiProyecto # Inicializa un nuevo repositorio Git llamado \"MiProyecto\".\ncd MiProyecto # Cambia al directorio reci\u00e9n creado\ngit add .             # A\u00f1ade todos los archivos actuales al repositorio\ngit commit -m \"First commit\" # Crea un 'commit' con el mensaje 'First commit'<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Synchronisieren_des_Git-Repositories_mit_einem_SSH-Zielverzeichnis\"><\/span>Sincronizar el repositorio Git con un directorio de destino SSH<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Aqu\u00ed sincronizas tu repositorio Git local con un directorio remoto a trav\u00e9s de SSH. Esto te permite almacenar de forma segura tu trabajo en un servidor remoto y compartirlo con los miembros del equipo.<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">ssh root@ihr-server.com \"mkdir \/ruta\/a\/directorio-objetivo\" # Crea un directorio en el servidor\nssh root@ihr-server.com \"cd \/ruta\/a\/directorio-objetivo; git init --bare\" # Inicializa un repositorio Git 'bare' en el servidor\ngit 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\u00e9n puedes utilizar un identificador diferente.\ngit push origin master # Env\u00eda tus cambios locales al repositorio remoto<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Arbeiten_mit_GitHub\"><\/span>Trabajar con GitHub<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Si prefieres trabajar con GitHub o quieres conectar un repositorio remoto adicional, tambi\u00e9n puedes conectar tu repositorio local a un repositorio de GitHub:<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">ssh root@ihr-server.com \"mkdir \/ruta\/a\/directorio-objetivo\" # Crea un directorio en el servidor\nssh root@ihr-server.com \"cd \/ruta\/a\/directorio-objetivo; git init --bare\" # Inicia un repositorio Git 'bare' en el servidor\ngit remote add origin ssh:\/\/root@ihr-server.com\/pfad\/zum\/zielverzeichnis # Vincula tu repositorio local con el repositorio remoto\ngit push origin master # Env\u00eda tus cambios locales al repositorio remoto<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Automatisches_Pushen_von_Releases_Veroffentlichungen_auf_das_SSH-Ziel\"><\/span>Env\u00edo autom\u00e1tico de versiones (publicaciones) al destino SSH<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Automatice el despliegue de sus cambios en el servidor con un gancho post-recepci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">ssh root@ihr-server.com # Se conecta al servidor\ncd \/ruta\/al\/directorio-destino # Cambia al directorio de destino\nnano hooks\/post-receive # Crea o edita el script hook 'post-receive<\/code><\/pre>\n\n\n\n<p>Inserte el siguiente script para aplicar autom\u00e1ticamente los cambios al directorio de trabajo en el servidor:<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">#!\/bin\/sh\nGIT_WORK_TREE=\/ruta\/a\/directorio_de_trabajo git checkout -f # Actualiza el directorio de trabajo en el servidor con los \u00faltimos cambios\nchown -R nombreusuario:nombregrupo \/ruta\/a\/directorio_de_trabajo # Cambia el propietario de los archivos del directorio de trabajo\nchmod +x hooks\/post-receive # Hace ejecutable el script\nOpcional:\nchown -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\u00edficos. Aqu\u00ed utilizo 33:33 porque estos son los ID de mi usuario del servidor web y del grupo de usuarios del servidor web www-data.<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Anderungen_vom_SSH-Ziel_in_das_lokale_Repository_ziehen\"><\/span>Arrastre los cambios desde el destino SSH al repositorio local<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Transfiera los cambios realizados en el servidor de destino SSH a su repositorio local:<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">ssh root@ihr-server.com # Se conecta al servidor\ncd \/ruta\/al\/directorio-de-trabajo # Cambia al directorio de trabajo en el servidor\ngit add .  # A\u00f1ade todos los archivos nuevos o modificados al commit\ngit commit -m \"Descripci\u00f3n de los cambios\" # Crea una nueva confirmaci\u00f3n con la descripci\u00f3n de los cambios.\ngit push origin master # Env\u00eda los cambios al repositorio remoto\ngit pull origin master # Extrae los \u00faltimos cambios del repositorio remoto a tu repositorio local<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Anderungen_vom_GitHub_Remote_Repository_ins_lokale_Repository_ubernehmen\"><\/span>Aplicar los cambios del repositorio remoto de GitHub al repositorio local<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Por \u00faltimo, aprender\u00e1s a integrar eficazmente en el repositorio local los cambios realizados en el repositorio remoto de GitHub. Esto es especialmente \u00fatil si trabajas en un equipo en el que varias personas est\u00e1n trabajando en diferentes partes de un proyecto al mismo tiempo, como cuando se desarrolla software complejo o se crea en colaboraci\u00f3n un tema o plugin de WordPress. Al actualizar regularmente tu repositorio local, te aseguras de estar siempre al d\u00eda con el trabajo colaborativo m\u00e1s reciente.<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:14px\"><code lang=\"bash\" class=\"language-bash\">git fetch origin master # Obtiene la informaci\u00f3n m\u00e1s reciente del repositorio de GitHub\ngit merge origin\/master # Fusiona los cambios del repositorio de GitHub en tu repositorio local.<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fazit_Gemeinsam_wachsen_durch_Teilen_und_Lernen\"><\/span>Conclusi\u00f3n: Crecer juntos compartiendo y aprendiendo<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Hemos llegado al final de esta gu\u00eda, y espero que encuentres \u00fatiles estos conocimientos sobre el uso de Git y SSH. Recuerda que dominar estas herramientas no s\u00f3lo mejorar\u00e1 tus habilidades individuales de desarrollo de software, sino que tambi\u00e9n allanar\u00e1 el camino para proyectos de equipo m\u00e1s eficientes y armoniosos.<\/p>\n\n\n\n<p>Te invito a compartir tus ideas, experiencias o preguntas en los comentarios. \u00bfHas tenido alguna experiencia con Git y SSH? \u00bfHay alg\u00fan problema concreto que hayas encontrado o alg\u00fan consejo que quieras compartir con la comunidad? Tus comentarios no s\u00f3lo son valiosos para m\u00ed, sino tambi\u00e9n para otros lectores.<\/p>\n\n\n\n<p>Su contribuci\u00f3n podr\u00eda ser la clave que ayude a otra persona a resolver un problema o descubrir una nueva perspectiva. \u00a1Estoy deseando saber de ti!<\/p>\n\n\n\n<p>Hasta la pr\u00f3xima, \u00a1sigue siendo curioso e invol\u00facrate en el mundo de la codificaci\u00f3n! \ud83c\udf1f\ud83d\udc68\u200d\ud83d\udcbb\ud83d\udc69\u200d\ud83d\udcbb<\/p>","protected":false},"excerpt":{"rendered":"<p>\u00a1Descubre 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.<\/p>","protected":false},"author":1,"featured_media":3101,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_et_pb_use_builder":"off","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[19,13,20],"tags":[657,658,659,660],"dipi_cpt_category":[],"class_list":["post-3092","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-howtos-anleitungen","category-ratgeber","category-tipps-tricks","tag-git","tag-github","tag-ssh","tag-wordpress-entwicklung"],"acf":[],"_links":{"self":[{"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/posts\/3092","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/comments?post=3092"}],"version-history":[{"count":11,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/posts\/3092\/revisions"}],"predecessor-version":[{"id":3255,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/posts\/3092\/revisions\/3255"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/media\/3101"}],"wp:attachment":[{"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/media?parent=3092"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/categories?post=3092"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/tags?post=3092"},{"taxonomy":"dipi_cpt_category","embeddable":true,"href":"https:\/\/isla-stud.io\/es\/wp-json\/wp\/v2\/dipi_cpt_category?post=3092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}