From 0c72b5cf0340096d288a81ce66ea0409e067320c Mon Sep 17 00:00:00 2001 From: Yurely Date: Thu, 4 Aug 2022 17:46:49 -0400 Subject: [PATCH 1/3] Revision of the article Git de 0 a 100 en diez sencillos pasos --- pages/blog/0002-GitCeroACien/GitCeroACien.md | 210 ++++++++++++++----- 1 file changed, 156 insertions(+), 54 deletions(-) diff --git a/pages/blog/0002-GitCeroACien/GitCeroACien.md b/pages/blog/0002-GitCeroACien/GitCeroACien.md index ff383228..b2e0187c 100644 --- a/pages/blog/0002-GitCeroACien/GitCeroACien.md +++ b/pages/blog/0002-GitCeroACien/GitCeroACien.md @@ -15,78 +15,180 @@ ![header](../../../images/blog/git-de-en-diez-sencillos-pasos/header.png) -¿Necesitas aprender [Git](http://git.io) para manejar con mayor eficiencia y control tus projectos y trabajos? Ya sea para desarrollo de software, creación de paginas web, investigaciones científicas, o para manejar tus escritos, te podría ser muy util aprovechar la seguridad que te da Git con su control de versiones, o la facilidad con la que te deja colaborar con tus colegas. Ademas, podría serte de mucha ayuda a la hora de buscar empleo en tu area de trabajo, ya que los proyectos y contribuciones que tengas subidos a Git te servirán como parte de tu curriculo. -Sin embargo, puede parecerte algo intimidante debido a la gran diversidad de opciones que te proporciona, además del uso requerido de la línea de comandos en la aplicación Git. Pero si sigues los 10 pasos que presentamos a continuación, te darás cuenta de lo sencillo que puede resultar subir y manejar archivos en tu primer repositorio, crear varias ramas en el mismo y compartir archivos con colaboradores. +¿Necesitas aprender [Git](https://git-scm.com/) para manejar con mayor +eficiencia y control tus projectos y trabajos? Ya sea para desarrollo de +software, creación de páginas web, investigaciones científicas, o para +manejar tus escritos, te podría ser muy útil aprovechar la seguridad que +te da Git para el control de versiones, o la facilidad con la que +permite la investigación colaborativa. Además, podría serte de mucha +ayuda a la hora de buscar empleo en tu área de trabajo, ya que los +proyectos y contribuciones que tengas almacenados en Git te servirán como +parte de tu currículo. Sin embargo, puede parecerte algo intimidante +debido a la gran diversidad de opciones que te proporciona, además del +uso requerido de la línea de comandos en la aplicación Git. Pero si +sigues los 10 pasos que presentamos a continuación, te darás cuenta de +lo sencillo que puede resultar subir y manejar archivos en tu primer +repositorio, crear varias ramas en el mismo y compartir archivos con +colaboradores. -## 1. Creación de tu cuenta Github +## 1. Crea tu cuenta en Github + +Aunque es posible emplear git a nivel local, es preferible que utilices +una plataforma que te permita alojar repositorios en la nube, tal como +[Github](https://github.com/) o [Gitlab](https://about.gitlab.com/) para +difundir fácilmente tu trabajo. Puedes [registrar una cuenta +Github](https://github.com/join), donde simplemente tendrás que +proporcionar tus datos y seguir los pasos de creación de cuenta. Luego +de registrarla, podrás seleccionar un plan de pago cuando +quieras, o simplemente usarlo de forma gratuita. + +## 2. Crea tu primer repositorio + +Inmediatamente después de crear tu primera cuenta, Github te guiará +hacia la creación de tu primer repositorio, a través de +https://github.com/new, donde tendrás que ponerle un nombre y una +descripción. Github automáticamente crea el repositorio con un archivo +`README.md`, el cual es un simple archivo de texto que será visto al +entrar en la página del repositorio. Este archivo tiene información +importante acerca del repositorio, el propósito de los archivos que +están allí y de cómo está organizado el repositorio. También puedes +colocar allí algún enlace a la página web del proyecto (si la tienes), o +un correo para contactos e información. + +## 3. Instala Git en tu computadora + +Para poder subir archivos a tu repositorio desde tu disco duro, tendrás +que instalar Git en tu computadora. Simplemente descárgalo desde +https://git-scm.com/, o, si estás usando Linux, instálalo mediante el +gestor de paquetes de tu distribución buscando el paquete git. Después +podrás usarlo en la línea de comandos. Verifica si se instaló +correctamente ejecutando `git –-help` + +## 4. Clona un repositorio + +Cuando creas un repositorio Git, automáticamente se crea una carpeta +oculta `.git` con información de los archivos y ramas de tu repositorio, +los cambios a estos y el último commit. Tu repositorio en Github también +contiene esta carpeta, así que, para ahorrarte un dolor de cabeza, +deberías clonarlo (copiarlo en tu ordenador), ya sea descargándolo desde +su página o en la línea de comandos escribiendo: `git clone +https://github.com/(tu usuario)/(nombre del repositorio).git`. También +puedes copiar la URL del repositorio desde la página. -Aunque es posible utilizar git a nivel local, es preferible que utilizes una plataforma que te permita alojar repositorios en la nube, tal como Github or Gitlab para difundir mas fácilmente tu trabajo. Podrás registrar una cuenta [Github](https://github.com/join), donde simplemente tendrás que proporcionar tus datos y seguir los pasos de creación de cuenta. Tras registrarla, podrás seleccionar un plan de pago cuando quieras, o simplemente usarlo de forma gratuita. - -## 2. Creación de tu primer repositorio - -Inmediatamente después de crear tu primera cuenta, Github te guiará hacia la creación de tu primer repositorio, a través de https://github.com/new, donde tendrás que ponerle un nombre y una descripción. Github automáticamente crea el repositorio con un archivo README.md, el cual es un simple archivo de texto que será visto al entrar en la pagina del repositorio. Este archivo tiene información importante acerca del repositorio, el propósito de los archivos que están allí y de cómo está organizado el repositorio. También puedes aprovechar de colocar allí algún enlace a la página web del proyecto (si la tienes), o un correo para contactos e información. - -## 3. Instalar Git en tu computadora - -Para poder subir archivos a tu repositorio desde tu disco duro, tendrás que instalar Git en tu computadora. Simplemente descárgalo desde https://git-scm.com/, o, si estas usando Linux, instálalo mediante el gestor de paquetes de tu distribución buscando por el paquete git. Después podrás usarlo mediante la línea de comandos. Verífica si fue correctamente instalado ejecutando -git –-help - -## 4. Clonando un repositorio a tu computadora +## 5. Agrega archivos a tu repositorio y haz tu primer commit -Cuando creas un repositorio Git, automáticamente se crea una carpeta oculta .git la cual contiene información respecto a los archivos y ramas de tu repositorio, los cambios a éstos y el último commit del repositorio. Tu repositorio en Github también contiene esta carpeta, asi que, para ahorrarte un dolor de cabeza, deberías clonarlo (copiarlo en tu ordenador), ya sea descárgandolo desde su página o mediante la línea de comandos escribiendo: -git clone https://github.com/(tu usuario)/(nombre del repositorio).git. También puedes copiar la URL del repositorio desde la página. +Cada vez que realizas cambios en tu repositorio (ya sea modificando, +agregando o borrando archivos), deberás sincronizarlos haciendo lo que +se conoce como un commit. Puedes utilizar los comandos: -## 5. Agrega archivos a tu repositorio y haz tu primer commit +- `git add {nombre de tu archivo}` -Cada vez que realizas cambios en tu repositorio (ya sea modificando, agregando o borrando archivos), deberás sincronizar el conjunto de cambios con tu repositorio, haciendo lo que se conoce como un commit. Puedes utilizar los comandos: +- `git rm {nombre de tu archivo}` -- git add {nombre de tu archivo} -- git rm {nombre de tu archivo} +para hacer cambios en la copia local de tu repositorio, ya sea añadir y +modificar o eliminar archivos, respectivamente. Antes de sincronizar los +cambios, debes ‘empaquetarlos’ en un commit, mediante el comando `git commit -m “{descripción de los cambios}”` -para hacer cambios en la copia local de tu repositorio, ya sea añadir y modificar o quitar archivos, respectivamente. Antes de sincronizar los cambios, debes ‘empaquetarlos’ en un commit, mediante el comando -git commit -m “{descripción de los cambios}” +Después podrás sincronizar ese commit con el servidor de Github +utilizando el comando `git push origin master`. -Después podrás sincronizar ese commit con el servidor de Github utilizando el comando git push origin master -Con aplicaciones gráficas como Github Desktop u otra similar, podrás realizar estos cambios de una forma mucho más intuitiva. +Con aplicaciones gráficas como Github Desktop u otra similar, podrás +realizar estos cambios de una forma mucho más intuitiva. ## 6. Maneja distintas ramas de tu repositorio -Cuando creas tu repositorio con git, sólo cuenta con la rama principal, o “default”, la cual se denomina master. En git la rama es una especie de ‘apuntador’ el cual señala hacia una serie especifica de commits. Cuando quieras hacer cambios en tus archivos, para realizar pruebas sin afectar el funcionamiento del código que ya sabes que funciona, puedes crear otra rama. Si los resultados son de tu agrado, podrás sincronizar ambas ramas más tarde. -Para crear otra rama, simplemente ejecuta: -git checkout -b {nombre de tu rama} -Esto hará que, a partir de ahora, todos los cambios que realices a tus archivos sean parte de la rama que has creado. Si deseas sincronizar tu nueva rama con el servidor de Github, ejecutas: -git push origin {nombre de tu rama} -Igual que para hacer cambios en master, deberás hacer un commit para sincronizar los cambios locales con el repositorio de Github. - -## 7. Realiza un merge +Cuando creas tu repositorio con git, este solo tiene una rama principal +o “default”, la cual se denomina `master`. En git, una rama es una +especie de ‘apuntador’ que señala a una serie específica de commits. +Cuando quieras hacer cambios en tus archivos, para realizar pruebas sin +afectar el funcionamiento del código alojado en la nube que ya sabes que +funciona, puedes crear otra rama. Si los resultados son de tu agrado, +podrás sincronizar ambas ramas más tarde. -El comando git checkout nos permite cambiar de rama dentro del repositorio. Puedes usarlo para volver a hacer cambios en la rama master con el siguiente comando: -git checkout master -Si los cambios que has hecho en la rama te resultan de tu agrado, puedes hacer un merge, lo que quiere decir que se fusionan los cambios hechos en la rama secundaria con los de la rama en la que estas ubicado actualmente (en este caso, master). -git merge {rama con cambios} -Git intentará hacer este proceso automáticamente, pero puede ser que hayan conflictos entre ramas con los cambios hechos. En este caso, tendrás que editar los archivos que te muestra Git, y agregarlos manualmente con -git add {nombre de archivo} +Para crear otra rama, simplemente ejecuta: -## 8. Verificar cambios con tu copia local +`git checkout -b {nombre de tu rama}` -En caso de que tu copia local del repositorio no tenga los cambios hechos hasta el último commit en la rama que estás trabajando, puedes actualizarla con el comando -git pull -Si quieres ver que cambios han habido entre las distintas ramas del repositorio, puedes hacerlo con el comando -git diff {rama fuente} {rama a comparar} -También puedes ver la historia del repositorio (los commits hechos a lo largo del tiempo) usando el comando -git log -Recomendamos que primero ejecutes git log –help para ver como puedes aprovechar mejor esta herramienta. +Esto hará que, a partir de ahora, todos los cambios que realices a +tus archivos sean parte de la rama que has creado. -## 9. Proponer cambios a los repositorios de los demás +Si deseas sincronizar tu nueva rama con el servidor de Github, ejecutas: -En caso de que quieras hacer un commit a un repositorio que sea de otra persona, simplemente tendras que ir a la pagina del repositorio en Github, hacer un fork (una copia personal de ese repositorio, como un puente hacia el original), y clonarlo en tu computadora. -Luego de crear los commit deseados, y subirlos a tu fork, podras dirigirte a la pagina en la que reside tu fork y darle click a ‘New pull request’ (o solicitud de extracción). Esto te llevara a una pagina donde puedes evaluar los cambios que has hecho y crear una solicitud para que los propietarios del repositorio los fusionen con la rama master del repositorio. +`git push origin {nombre de tu rama}` -## 10. Aceptar o negar cambios propuestos +Igual que para hacer cambios en master, deberás hacer un commit para +sincronizar los cambios locales con el repositorio de Github. -Cuando un colaborador siga los pasos descritos anteriormente y haga una solicitud de extracción, podrás verificar los cambios que se han realizado en el commit de su fork, ademas de ver la descripción de este y las sugerencias que han dado. Podrás entonces conversar con ellos en los comentarios de la solicitud de extracción, y dependiendo de lo que consideres apropiado, aceptar o negar los commit propuestos, y fusionar su fork con la rama master. -En caso de que quieras que un colaborador pueda contribuir al proyecto sin necesidad de aprobar sus commit, podrás invitarlos mediante la pagina de Parámetros (accesible mediante la pagina del repositorio), simplemente dandole clic a Colaboradores en la barra lateral izquierda y añadiendo su nombre de usuario. +## 7. Realiza un merge -Si has seguido todos los pasos hasta ahora, felicidades, ya puedes considerarte oficialmente un usuario de git! Mantener y actualizar tus propios repositorios y colaborar con los demás usuarios de Github es mas sencillo de lo que parece. Si así lo deseas, puedes seguir buscando información acerca de como aprovechar git al maximo, ya sea a través del libro [Pro Git](https://git-scm.com/book/es/v2/), o documentación de [Github](https://help.github.com/en/github). +El comando `git checkout` nos permite cambiar de rama dentro del +repositorio. Puedes usarlo para volver a hacer cambios en la rama master +con el siguiente comando: + +`git checkout master` + +Si estás satisfecho con los cambios que has hecho en la rama, puedes +hacer un merge, lo que quiere decir que se fusionan los cambios hechos +en la rama secundaria con los de la rama en la que estás ubicado +actualmente (en este caso, master) de la siguiente manera: + +`git merge {rama con cambios}` + +Git intentará hacer este proceso automáticamente, pero puede ser que +hayan conflictos entre ramas con los cambios hechos. En este caso, +tendrás que editar los archivos que te muestra Git, y agregarlos +manualmente ejecutando `git add {nombre de archivo}`. + +## 8. Verifica cambios con tu copia local + +En caso de que tu copia local del repositorio no tenga los cambios +hechos hasta el último commit en la rama que estás trabajando, puedes +actualizarla ejecutando `git pull`. + +Para ver los cambios que se han realizado entre las distintas ramas del +repositorio, ejecuta el comando `git diff {rama fuente} {rama a comparar}` + +También puedes ver la historia del repositorio (los commits hechos a lo +largo del tiempo) usando el comando `git log`. Recomendamos que primero +ejecutes `git log –help` para ver como puedes aprovechar mejor esta +herramienta. + +## 9. Propone cambios a repositorios de terceros + +En caso de que quieras hacer un commit a un repositorio que sea de otra +persona, simplemente tendrás que ir a la página del repositorio en +Github, hacer un **fork** (una copia personal de ese repositorio, como un +puente hacia el original), y clonarlo en tu computadora. + +Luego de crear los commit deseados y subirlos a tu fork, podrás +dirigirte a la página donde este se encuentra y dar click a **New pull +request** (o solicitud de extracción). Esto te llevará a una página +donde puedes evaluar los cambios que has hecho y crear una solicitud +para que los propietarios del repositorio los fusionen con su rama +master. + +## 10. Acepta o niega cambios propuestos + +Cuando un colaborador siga los pasos descritos anteriormente y haga una +solicitud de extracción en tu repositorio, podrás verificar los cambios +que se han realizado en el commit de su fork, además puedes ver su +descripción y las sugerencias que han dado. Podrás entonces conversar +con ellos en los comentarios de la solicitud de extracción, y +dependiendo de lo que consideres apropiado, aceptar o negar los commit +propuestos y fusionar su fork con la rama master de tu repositorio. + +En caso de que quieras que un colaborador pueda contribuir al proyecto +sin necesidad de aprobar sus commit, podrás invitarlos mediante la +página de *Parámetros* (accesible desde la página del repositorio), +simplemente dando click a *Colaboradores* en la barra lateral izquierda +y añadiendo su nombre de usuario de GitHub. + +Si has seguido todos los pasos hasta ahora, felicidades, ya puedes +considerarte oficialmente un usuario de git. Mantener y actualizar tus +propios repositorios y colaborar con los demás usuarios de Github es más +sencillo de lo que parece. Si así lo deseas, puedes seguir buscando +información acerca de cómo aprovechar git al máximo, ya sea a través del +libro [Pro Git](https://git-scm.com/book/es/v2/) o en la documentación +de [Github](https://help.github.com/en/github). From ce42bd1da06cc831e93e19c458a00a650b114c26 Mon Sep 17 00:00:00 2001 From: Yurely Date: Thu, 4 Aug 2022 17:48:56 -0400 Subject: [PATCH 2/3] =?UTF-8?q?Revision=20of=20the=20article=20Investigaci?= =?UTF-8?q?=C3=B3n=20colaborativa=20con=20Git?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../investigacion_colaborativa_con_git.md | 155 +++++++++--------- 1 file changed, 80 insertions(+), 75 deletions(-) diff --git a/pages/blog/0009-investigacion_colaborativa_con_git/investigacion_colaborativa_con_git.md b/pages/blog/0009-investigacion_colaborativa_con_git/investigacion_colaborativa_con_git.md index 45e50234..2ae1d786 100644 --- a/pages/blog/0009-investigacion_colaborativa_con_git/investigacion_colaborativa_con_git.md +++ b/pages/blog/0009-investigacion_colaborativa_con_git/investigacion_colaborativa_con_git.md @@ -15,97 +15,102 @@ ![header](../../../images/blog/investigacion-colaborativa-con-git/header.png) -La Investigación Colaborativa surge en el momento en el cual varias entidades -que pueden estar especializadas en diferentes áreas, se establecen un mismo -objetivo o proyecto. La finalidad de una investigación bajo este modelo es encontrar soluciones, -descubrir o explicar comportamientos de un fenómeno en particular. Este fenómeno -puede ser del punto de vista económico, social, politico, científico, entre -otros. +La Investigación colaborativa surge en el momento en el que varias +entidades, que pueden estar especializadas en diferentes áreas, se +establecen un mismo objetivo o proyecto. La finalidad de una +investigación bajo este modelo es encontrar soluciones, descubrir o +explicar comportamientos de un fenómeno en particular el cual puede ser +económico, social, político, científico, entre otros. -La investigación colaborativa puede surgir en distintas ocasiones donde se -requiera un ciclo colaborativo de acuerdo a las necesidades que se presenten,se -busca brindar aportes significativos en la sociedad o entorno. +La investigación colaborativa se presenta en distintas ocasiones donde +se requiera un ciclo colaborativo de acuerdo a las necesidades que se +presenten en un proyecto, se busca brindar aportes significativos en la +sociedad o entorno. -A continuación se muestran algunos ejemplos en los cuales es útil este -tipo de investigación: +A continuación te mostramos algunos ejemplos en los cuales puede resultar +útil implementar este tipo de investigación: -- Un departamento particular esta ayudando a otro departamento que tiene una +- Un departamento de una organización está ayudando a otro que tiene una deficiencia con respecto a la optimización de sus actividades. -- Los cultivos de una localidad se están viendo afectados por una plaga. Esta - plaga es similar a una ocurrida años atrás. Para estudiar las consecuencias, - las causas y prevenir futuros episodios como este, varios biólogos expertos - junto con historiadores, ingenieros agrónomos y especialistas en otras areas - se han reunido. +- Los cultivos de una localidad se están viendo afectados por una plaga; + esa plaga es similar a una ocurrida años atrás. Para estudiar las + causas, consecuencias y prevenir futuros episodios como este, se han + reunido varios biólogos expertos junto con historiadores, ingenieros + agrónomos y especialistas en otras áreas. -- Un grupo de expertos en diversas disciplinas se ha planteado crear un +- Un grupo de expertos en diversas disciplinas tienen en mente crear un documento que sea pieza fundamental en la conformación del presupuesto nacional del siguiente año fiscal. -- Un diseñador industrial esta proponiendo un rediseño de uno de los productos - de la empresa en la que trabaja. Para ello esta realizando un estudio con la - ayuda de sus compañeros expertos en marketing y estadística. De manera tal - que se obtenga una mejor perspectiva de los usuarios, sus necesidades y - aceptación del mercado en general. - -- Una institución privada desea financiar una fundación. Para ello ha recurrido - a un grupo de expertos con la finalidad de evaluar y presentar un esquema - del presupuesto y la descripción de lo que debe invertir para obtener los - mejores resultados. - -Cada una de las situaciones ejemplificadas requieren de distintos grupos -multidisciplinarios que pueden estar formados por personas, entidades, -institutos o grupos de trabajo que interactúen a la vez con la información. Esto -puede ser de manera individual, en paralelo o en conjunto para conformar lo que -sería el proyecto final. La idea es que todos los miembros del equipo que -llevarán a cabo el proyecto cumplan con tareas especificas según sus conocimientos -o aptitudes. - -Las tareas asignadas a cada miembro pueden o no depender condicionalmente la una -de las otras. Además de que promuevan el cambio y fomenten la participación. -Esto implica que el proyecto estará sujeto a cambios constantes por la -integración de nuevas ideas. - -Es aquí cuando nos podemos plantear ¿Cómo almacenamos todos los cambios que -ocurren durante el proceso de avance hasta que es alcanzado el objetivo -final?,¿Qué hacer si un miembro del proyecto elimina por accidente información -importante?. - -Para esto se propone el uso de los sistemas de control de versiones (VCS siglas -en inglés) porque nos permiten almacenar todos los cambios realizados y la -información asociada a ellos. En este caso se recomienda principalmente **Git**. +- Un diseñador industrial está proponiendo un rediseño de uno de los + productos de la empresa en la que trabaja. Para ello realiza un + estudio con la ayuda de sus compañeros expertos en marketing y + estadística. Con esto busca obtener una mejor perspectiva de los + usuarios, sus necesidades y aceptación del mercado en general. + +- Una institución privada desea financiar las actividades de una + fundación. Para lo cual recurre a un grupo de expertos con la + finalidad de evaluar y presentar un esquema del presupuesto y la + descripción de lo que debe invertir para obtener los mejores + resultados. + +Cada una de las situaciones ejemplificadas requieren de la participación +de distintos grupos multidisciplinarios que pueden estar formados por +personas, entidades, institutos o grupos de trabajo que interactúen a la +vez con la información. Esto puede ser de manera individual, en paralelo +o en conjunto para conformar lo que sería el proyecto final. La idea es +que, todos los miembros del equipo que llevarán a cabo el proyecto, +cumplan con tareas especificas según sus conocimientos o aptitudes. + +Las tareas asignadas a cada miembro pueden o no depender +condicionalmente unas de otras y deben promover el cambio y fomentar la +participación. Esto implica que el proyecto estará sujeto a cambios +constantes por la integración de nuevas ideas. Es aquí cuando nos +podemos plantear ¿Cómo almacenamos todos los cambios que ocurren hasta +que es alcanzado el objetivo final? ¿Qué debemos hacer si un miembro del +proyecto elimina por accidente información importante?. + +Para esto proponemos el uso de los *sistemas de control de versiones* +(VCS, por sus siglas en inglés) pues nos permiten almacenar todos los +cambios realizados y la información asociada a ellos. En este caso te +recomendamos el uso de **Git**. ## Git -Es un sistema de control de versiones que se diferencia de sus similares por la -forma en la que manejan sus datos. Git maneja sus datos como una secuencia de -copias instantáneas. Además, "todo es verificado mediante una suma -de comprobación (*checksum* en inglés) antes de ser almacenado, y es identificado -a partir de ese momento mediante dicha suma. Esto significa que es imposible -cambiar los contenidos de cualquier archivo o directorio sin que Git lo sepa." - -La mayoría de las operaciones en Git sólo necesitan archivos y recursos locales -para funcionar. Estas funcionalidades nos permiten hacer investigación -colaborativa de manera tal que la información siempre este salvaguardada. - -Por otro lado Git al igual que otros VCS poseen un sistema de ramificación. Que -consiste en tomar la versión principal del proyecto para poder trabajar en ella -individualmente pero sin alterar la versión original, se trabaja con una especie -de copia. Hechas las modificaciones la rama puede volver a fusionarse con el -archivo de origen. - -El proceso de creación de ramas se pensaría lento y tedioso por la cantidad de -contenido o información en el proyecto. Pero en Git esto no ocurre, es rápido y -sencillo. La ventaja de esta funcionalidad permite a cada colaborador trabajar -de manera separada y eficiente, sin alterar el archivo principal. Así mismo se -pueden crear subproyectos constituidos por ramas de las cuales se tengan otras +Es un sistema de control de versiones que se diferencia de sus similares +por la forma en la que manejan sus datos; Git lo hace como una secuencia +de copias instantáneas. Además, "todo es verificado mediante una suma de +comprobación (*checksum* en inglés) antes de ser almacenado, y a partir +de ese momento es identificado mediante esta, esto quiere decir que es +imposible cambiar el contenido de cualquier archivo o directorio sin +que Git lo sepa". + +Para ejecutar la mayoría de las operaciones en Git solo se necesitan +archivos y recursos locales. Estas funcionalidades te permiten hacer +investigación colaborativa y que la información siempre esté +salvaguardada. + +Por otro lado Git, al igual que otros VCS, posee un sistema de +ramificación; el cual consiste en tomar la versión principal del +proyecto para poder trabajar en ella individualmente, pero sin alterar +la versión original, manejando así una especie de copia de esta. Hechas +las modificaciones, la rama puede volver a fusionarse con el archivo de +origen. + +Tal vez pienses que el proceso de creación de ramas es lento y tedioso, +debido a la cantidad de contenido o información en el proyecto, pero en +Git esto resulta rápido y sencillo. Una de las ventajas de utilizar +ramas es que, como colaborador, puedes trabajar de manera separada y +eficiente, sin alterar la versión principal. Así mismo, puedes crear +subproyectos constituidos por ramas de las cuales se deriven otras ramas. -Git nos permite obtener nuestro propio repositorio remoto o utilizar otros -alternativos. Esto nos ayuda a sacarle el máximo provecho a la información y a -su vez compartir conocimiento rompiendo barreras de distancia. +Git te permite obtener tu propio repositorio remoto o utilizar otros +alternativos, con lo cual obtendrás el máximo provecho a la información +y a su vez compartirás conocimiento rompiendo barreras de distancia. La investigación colaborativa con Git es ideal para crear grandes movimientos y proyectos. Los avances y cambios llegarán en poco tiempo, los equipos de trabajo From f6e04a4b20e57202ec1071e670ee50a36caea7fa Mon Sep 17 00:00:00 2001 From: Yurely Date: Thu, 4 Aug 2022 17:49:46 -0400 Subject: [PATCH 3/3] Revision of the article Cinco tips para aumentar tu productividad con Git --- .../5ProductividadGit.md | 116 +++++++++--------- 1 file changed, 59 insertions(+), 57 deletions(-) diff --git a/pages/blog/0017-5ProductividadGit/5ProductividadGit.md b/pages/blog/0017-5ProductividadGit/5ProductividadGit.md index dfe94eb3..0ffc5031 100644 --- a/pages/blog/0017-5ProductividadGit/5ProductividadGit.md +++ b/pages/blog/0017-5ProductividadGit/5ProductividadGit.md @@ -25,22 +25,22 @@ completo de su repositorio de manera local y existe una copia central. -Usar Git no es una actividad solo para desarrolladores -de software. Esta herramienta te es útil en los casos donde necesites llevar a cabo -proyectos colaborativos: por ejemplo si -tienes un blog puedes gestionar los artículos y almacenarlos en un -repositorio de Git. +No solo los desarrolladores de software utilizan Git. Esta herramienta +es útil en los casos donde necesites llevar a cabo proyectos +colaborativos: por ejemplo si tienes un blog, puedes gestionar los +artículos y almacenarlos en un repositorio de Git. En este post te presentamos algunos tips para que tu trabajo en git sea más productivo, posiblemente, que lo que ha sido hasta ahora. 1. **Maneja las ramas adecuadamente** -Como te mencionamos en nuestro artículo Git de 0 a 100 (enlace a -artículo de Rainer GitCeroACien) puedes manejar distintas ramas en tu -repositorio. Las ramas en Git son equivalentes a los directorios en tu computador. En cada rama, Git va registrando todos los cambios desarrollados por quienes la utilicen y también se permite realizar operaciones entre las ramas como su fusión, por ejemplo. Generalmente, las ramas son utilizadas para desarrollar -funcionalidades aisladas unas de otras. Por defecto el repositorio se -crea con una rama que se configura por defecto, denominada "master". +Como te mencionamos en nuestro artículo [Git de 0 a 100 en diez sencillos pasos](https://opensciencelabs.org/blog/0002-GitCeroACien/git-de-en-diez-sencillos-pasos/) puedes manejar distintas ramas en tu +repositorio. En cada rama, se registran todos los cambios hechos por +quienes la utilizan y también puedes realizar operaciones entre las +ramas como su fusión, por ejemplo. Generalmente, las ramas son +utilizadas para desarrollar funcionalidades aisladas unas de otras. Por +defecto el repositorio se crea con una rama, denominada "master". En el manejo de ramas debes considerar, entre otras cosas, lo siguiente: @@ -50,46 +50,45 @@ En el manejo de ramas debes considerar, entre otras cosas, lo siguiente: funciones o se corrigen fallos encontrados en master. A esta rama se le suele denominar *develop*. -- Puedes crear todas las ramas que consideres, por ejemplo para desarrollar otras - funcionalidades y/o corregir detalles de la rama develop, por tanto - estas ramas se derivan de esta. +- Puedes crear ramas derivadas de *develop* para desarrollar otras + funcionalidades y/o corregir detalles de esta rama, suelen denominarse + *features*. -- En la rama master sólo deben estar las modificaciones definitivas del - proyecto, es decir, esta rama no debe "tocarse" hasta que estés seguro +- En la rama *master* solo deben estar las modificaciones definitivas del + proyecto, es decir, no debes "tocarla" hasta que estés seguro que los cambios en el proyecto no arrojen problemas al momento de hacer pruebas. -- Considera mantener actualizada la rama donde trabajes con la - rama desde donde salió. +- Debes mantener actualizada la rama donde trabajes con la rama de donde se derivó. - Evita mezclar cambios de diferentes ramas. -- Verifica en que rama te encuentras al momento de editar cualquier - archivo, así evitas realizar cambios y subirlos a la rama equivocada y afectar el desarrollo de todo el equipo de trabajo. +- Verifica la rama donde te encuentras al momento de editar cualquier + archivo, así evitas realizar cambios y subirlos a la rama equivocada y + afectar el desarrollo de todo el equipo de trabajo. Esto es sumamente + necesario. -2. **Crea alias para los comandos de git que más uses** +2. **Crea alias para los comandos de git que más utilices** -Al usar Git, a diario tienes que teclear cierta cantidad de comandos, -por ejemplo para bajar y subir cambios, y otros comandos que pueden -tornarse repetitivos. Para aumentar nuestra productividad, está a -nuestra disposición el crear alias para los comandos de git que más -usemos. El alias es un "nombre" que se le asigna a un comando de Git que -es más corto que dicho comando, lo cual nos permite ejecutar la misma -acción tecleando menos, es decir, nos ayuda a ahorrar tiempo. +Con Git, a diario tecleas cierta cantidad de comandos, algunos que +pueden tornarse repetitivos. Además esta herramienta no ofrece la +función de autocompletado. Puedes ser más productivo, si creas *alias* +para aquellos que más utilices. El alias es un "nombre" que, en este +caso, le asignamos a un comando de Git para que sea más corto, esto nos +permite ejecutar la misma acción tecleando menos, es decir, nos ayuda a +ahorrar tiempo y son más fáciles de recordar. -Si estás escribiendo algún comando, Git no provee la función de -autocompletado. Si no deseas escribir completos algunos comandos, puedes -fijar alias para ellos mediante `git config`. Por ejemplo: +Para fijar alias a los comandos utiliza `git config --global`. Por ejemplo: `$ git config --global alias.br branch` `$ git config --global alias.st status` `$ git config --global alias.ci commit` -De esta manera, de ahora en adelante escribes `git br` en lugar de -`git branch` y así para los demás del ejemplo. No existe un estándar para la -creación de alias, todo dependerá de que te sientas a gusto con ellos. A -medida que aumentes tu trabajo con Git, utilizarás frecuentemente otros -comandos, si te sientes a gusto no dudes crear alias para ellos. +De ahora en adelante escribes `git br` en lugar de `git branch` y así +para los demás del ejemplo. No existe un estándar para la creación de +alias, todo dependerá de que te sientas a gusto con ellos. A medida que +aumentes tu trabajo con Git, utilizarás frecuentemente otros comandos, +si te sientes a gusto no dudes en crear alias para ellos. 3. **Juntar commits en uno solo** @@ -101,17 +100,18 @@ Esta alternativa requiere que tomes en cuenta algunas cosas: - No se recomienda mezclar cambios de diferentes ramas. -- Evita en la medida de lo posible que los cambios sean de distinto - tipo, previniendo con ello inconvenientes si por algún motivo debes luego +- Evita, en la medida de lo posible, que los cambios sean de distinto + tipo (por ejemplo, un cambio en un archivo de texto y otro en uno de + código), previniendo inconvenientes si por algún motivo debes luego deshacer los cambios. -4. **Utiliza alguna interfaz gráfica para manejar Git** +4. **Puedes utilizar alguna interfaz gráfica para manejar Git** -Tal vez utilizar el terminal para gestionar el control de versiones -puede resultarte al principio algo complejo, mayormente si estas iniciándote con el -control de versiones. Por eso conviene que tengas en cuenta que, para gestionar los proyectos de una forma más -gráfica, visual e intuitiva y acelerar tu trabajo, puedes utilizar -algunos clientes gráficos de Git. Muchos de ellos son totalmente +Tal vez utilizar el terminal para gestionar Git puede resultarte al +principio algo complejo, mayormente si estás iniciándote con el control +de versiones. Por eso puede resultarte conveniente utilizar algunos +clientes gráficos de Git, para gestionar los proyectos de una forma +visual e intuitiva y acelerar tu trabajo. Muchos de ellos son totalmente gratuitos, de código abierto y los hay para cualquier sistema operativo. En la wiki de Git puedes encontrar una lista más completa de los @@ -120,37 +120,39 @@ En la wiki de Git puedes encontrar una lista más completa de los Las interfaces gráficas se adaptan a distintos flujos de trabajo, es decir, algunas incluyen más funcionalidades que otras. No obstante, ninguna puede considerarse mejor que otra, solamente que cada una se -ajusta a las necesidades de los usuarios. +ajusta a las necesidades de los usuarios. Vamos ¡anímate a usar alguna de ellas! 5. **Más sobre los commits y otras recomendaciones** +- - Al comenzar una nueva sesión de trabajo, deberías hacer un `fetch` o + un `pull` para traerte los últimos cambios. De esta manera, evitas + conflictos en el futuro al sobrescribir el trabajo de los demás sin + necesidad. + - Haz commit con frecuencia, no tengas miedo de hacer commits con cosas sin terminar y que se muestren así en el histórico. - Cada vez que tengas código que deseas guardar puedes hacer commit. Ten - presente que al hacer un commit no necesariamente debes hacer un push. + presente que al hacerlo no necesariamente debes hacer un push. Puedes hacer commits en tu repositorio local para proteger y llevar un control de tu trabajo. -- Revisa siempre los cambios antes de subirlos y cerciórate de que sólo - va para el commit lo que realmente necesites. +- Revisa siempre los cambios antes de subirlos y asegúrate de confirmar + en el commit lo que realmente necesites. - El mensaje de commit debe ser conciso pero al mismo tiempo informativo. -- No subas cambios directamente a master, siempre y cuando no lo amerite. - -- Al empezar una nueva sesión de trabajo, deberías hacer un `fetch` o un - `pull` para traerte los últimos cambios. De esta manera, evitas - conflictos en el futuro y evades sobrescribir el trabajo de los demás - sin necesidad. +- No subas cambios directamente a la rama *master*, siempre y cuando no lo + amerite. Te hemos presentado algunos tips para que tengas un mejor manejo y mayor -productividad al manejar git en tus proyectos. Tal vez muchas de ellas -son evidentes. Sin embargo, por más minimas que sean o que nos puedan -parecer debemos tenerlas presentes para evitar molestias en el proyecto -y en el grupo de trabajo. +productividad al utilizar git en tus proyectos. Tal vez muchas de ellas +son evidentes; sin embargo, por más mínimas que nos puedan parecer +debemos tenerlas presentes para evitar molestias en el proyecto y en el +grupo de trabajo y aumentar así nuestra productividad en el control de +versiones con Git. **Referencias**