Tutorial avanzado de Git

Tutorial avanzado de Git

La implementación de su proyecto a través de un repositorio remoto le permite administrar de manera flexible cada parte del mismo. Las correcciones de errores, las actualizaciones de funciones, la eliminación de archivos, el trabajo en equipo, las contribuciones de código abierto, la implementación de código y más están ahora al alcance de su mano con un sólido conocimiento de Git.





Entonces, ¿has estado usando Git pero quieres saber más? Aquí hay algunos consejos de Git más avanzados que harán que el control de la versión de su proyecto sea muy sencillo.





Rama de Git

Una rama de Git le impide empujar directamente a la rama maestra. Es útil si administra un proyecto con un equipo de desarrolladores. Puede crear tantas ramas de Git como desee y luego fusionarlas con la rama maestra más tarde.





Crear una rama de Git

Para crear una rama de Git, use:

|_+_|

Cambiar a una rama de Git

Usar verificar para cambiar a una rama de Git:



|_+_|

Después de cambiar a una rama, puede organizar sus cambios usando git add --todos . Luego, confíelos usando el git commit -m 'nombre de confirmación' mando.

Comparar una rama con Master

Utilizar el git diff mando:





|_+_|

Para comparar archivos específicos:

|_+_|

Comparar dos ramas es similar a cómo se compara una rama con la maestra:





|_+_|

Para ver las diferencias en un archivo específico entre dos ramas:

|_+_|

Enviar cambios a una sucursal remota

Es posible que desee que otro desarrollador observe los cambios que ha realizado en un archivo en su sucursal local antes de publicarlos en vivo. Una buena práctica es colocar tu sucursal local de Git en una réplica remota para que puedan echar un vistazo.

Supongamos que ha creado previamente una sucursal local llamada cambios . Puede cambiar a esa rama local, ajustar todos los archivos que desee, luego prepararlos y enviarlos a esa rama.

Luego puede enviar esos cambios a la versión remota de la rama:

|_+_|

Fusionar rama remota con maestro mediante solicitud de extracción

Entonces otro programador ha auditado los cambios en la rama remota ( cambios ). Pero desea fusionarlo con la rama maestra y publicarlo en vivo.

Recuerde que su rama remota hereda el nombre de su rama local de Git ( cambios ). A continuación, le mostramos cómo fusionar los cambios:

Cambie a la rama maestra:

|_+_|

Tire del origen o CABEZA de la rama ( cambios ) para fusionarlo con la rama maestra:

|_+_|

Empuje esta fusión en vivo a la rama maestra:

|_+_|

Utilice Git Merge en su lugar

Para fusionar una rama con el maestro usando el ir mando:

Migrar a la rama principal:

|_+_|

Fusionarlo con la rama ( cambios ):

|_+_|

Luego empuje la fusión en vivo a la rama maestra:

cuál es mi clave de seguridad de red
|_+_|

Asegúrese de reemplazar cambios con el nombre de tu sucursal.

Una vez que la fusión se realiza correctamente, puede eliminar la sucursal de forma local y remota si ya no lo necesitas:

Relacionado: Cómo cambiar el nombre de una rama en Git

Git Rebase

Si tiene varias ramas con confirmaciones desactualizadas, puede reajustar o reenfocar el cabeza / refs de esas ramas para heredar el cabeza / refs de uno actualizado.

Rebasar, por lo tanto, es útil cuando necesita actualizar algunas ramas con la base de una actual.

Sin embargo, cambiar la base no debería ser una acción frecuente, especialmente si está trabajando con un equipo, ya que puede interrumpir todo el flujo de trabajo. Pero si trabaja solo y está familiarizado con su flujo de trabajo y ramas, el rebase no debería causar estragos si sabe dónde y cómo usarlo.

Por ejemplo, suponga que tiene dos ramas; branch1 y branch2. Ahora, no ha realizado ningún cambio en branch1 durante algún tiempo. Pero constantemente confirma cambios en branch2, incluso recientemente.

Entonces decidió llevar branch1 junto con el flujo. Por lo tanto, cambiar la base de branch1 a branch2 significa que le está diciendo a branch1 que ignore sus confirmaciones anteriores y herede la confirmación reciente realizada en branch2.

Así es como puede hacerlo:

Cambie a la rama abandonada (rama1):

|_+_|

Luego, vuelva a establecer la base de branch1 en el branch2 actualizado:

|_+_|

Git Squash

Git squash te permite fusionar múltiples confirmaciones en una. Ayuda cuando corres git commit muchas veces en una sola actualización. Un ejemplo práctico es cuando cada corrección de error o refactorización de código para una sola característica tiene una confirmación separada.

Pero es posible que no desee presionar el compromiso HEAD con los que lo acompañan, ya que todos tienen el mismo propósito. Un enfoque recomendado es agruparlos en uno para evitar confusiones al realizar un seguimiento de las confirmaciones.

La mejor manera de aplastar las confirmaciones es a través del modo de rebase interactivo. Eche un vistazo al siguiente ejemplo para comprenderlo mejor.

En este ejemplo, suponga que tiene cinco correcciones de errores. Y hay un compromiso para cada uno de ellos. Así es como puedes combinar estas cinco confirmaciones en una:

Correr git reflog para ver el código hash de sus confirmaciones:

|_+_|

Aquí está el resultado en este caso:

Ahora tu objetivo es aplastar las últimas cinco confirmaciones, comenzando con primer arreglo hasta quinta solución .

Para hacer eso, copie el código hash de la confirmación justo debajo primer arreglo ( 0a83962 ). Entonces presione Q para dejar el volver a iniciar sesión .

Ahora corre git rebase --interactive en ese hash.

|_+_|

Luego, Git abre un archivo de rebase interactivo que se ve así:

Para aplastar las confirmaciones, excluyendo las primer arreglo , reemplazar elegir con s para cada uno de los otros se compromete:

Guarde y cierre este archivo.

Luego se abre otro archivo para que cambie el nombre de la confirmación aplastada:

¿Puedo averiguar a quién pertenece un número de teléfono?

Límpielos y escriba un nombre preferido para la confirmación aplastada:

Guarde ese archivo. Luego ciérrelo y debería recibir un mensaje de éxito en su terminal.

Nota: El archivo interactivo puede abrirse dentro del terminal. Pero si está en Windows, es posible que desee obligar a su terminal a abrir archivos globalmente en su editor de texto favorito para facilitar el aplastamiento.

Para hacer eso, abra su línea de comando y ejecute:

|_+_|

Git Fork vs.Git Clone

La bifurcación y la clonación son dos términos diferentes en Git. No puedes bifurcar tu repositorio porque ya está ahí contigo. Sin embargo, puede bifurcar el repositorio de otras personas y clonarlo después.

Bifurcar un repositorio significa que estás tomando una copia del repositorio de alguien y lo estás haciendo tuyo. Una vez que obtenga una copia de ese repositorio, puede clonarlo como lo haría con cualquiera de sus repositorios de git para cambios locales.

He aquí cómo clonar un repositorio remoto en GitHub e inicie una descarga en su directorio local:

|_+_|

Restaurar un archivo a su estado predeterminado

Si desea borrar los cambios en un archivo después de la última confirmación, puede usar el restaurar git mando:

|_+_|

Modificar un compromiso

Puede volver a una confirmación anterior si olvida realizar cambios en algunos archivos mientras los prepara.

Realice cambios en el archivo que olvidó. Entonces usa git enmendar para revisar un compromiso:

|_+_|

Archivos sin etapa

Puede eliminar archivos específicos que ha preparado para una confirmación utilizando ir rm mando:

|_+_|

También puede eliminar varios archivos a la vez:

|_+_|

Recuerde agregar la extensión de archivo relevante a cualquier archivo que esté eximiendo. Por ejemplo, un archivo de texto sin formato debe ser nombrearchivo.txt .

Relacionado: Cómo limpiar Git y eliminar archivos sin seguimiento

Restablecimiento de Git

Utilizando git restablecer es útil si desea eliminar todos los archivos que ha preparado para una confirmación a la vez:

|_+_|

Git reset HEAD, sin embargo, apunta el HEAD de una rama a una confirmación específica en su árbol de trabajo. Por ejemplo, si aún no ha enviado su compromiso actual, puede volver al compromiso enviado recientemente:

|_+_|

Reemplazar --suave con --duro si ya presionaste la confirmación actual:

|_+_|

Ir a revertir

A diferencia del Reiniciar mando, ir a revertir mantiene la integridad de su historial de confirmaciones. Es útil si desea modificar una confirmación debido a errores o errores.

No abandona el compromiso de destino ni crea uno nuevo. En cambio, vuelve a los cambios recientes que realizó sin eliminar o cambiar el nombre de dicha confirmación. Es una excelente manera de mantener sus confirmaciones más limpias, además de que es más seguro que reiniciar todo el tiempo.

Para volver a una confirmación:

|_+_|

Dónde CABEZA ~ 1 apunta a un compromiso específico en su árbol de trabajo.

Eliminar un archivo o directorio con seguimiento

Puedes usar git rm -f para eliminar cualquier archivo rastreado en su árbol de trabajo. Sin embargo, tenga en cuenta que Git no puede eliminar archivos sin seguimiento, ya que no los almacena en caché.

Para eliminar un archivo provisional:

|_+_|

Para eliminar una carpeta provisional:

|_+_|

Registro de Git

Para ver sus registros e historial de confirmaciones en Git:

|_+_|

Para registrar las actividades en una rama específica:

|_+_|

Relacionado: Cómo inspeccionar el historial de un proyecto con git log

A veces, es posible que desee volver a una confirmación abandonada. Entonces, para ver las confirmaciones abandonadas, incluidas las relevantes:

|_+_|

Para ver los registros de referencia de una rama en particular:

|_+_|

Administre las versiones de su proyecto como un profesional con Git

Con Git que ofrece muchas ventajas, puede administrar las versiones de su proyecto de forma remota sin robar archivos y carpetas en las instalaciones de su sucursal principal. Además, le permite ejecutar proyectos fácilmente con un equipo.

Como has visto, Git tiene muchas características que puedes explorar. Pero tenga cuidado de utilizar estas funciones a propósito. De lo contrario, podrías terminar rompiendo cosas. Dicho esto, aún puede crear un repositorio remoto de demostración y jugar con estas características.

Cuota Cuota Pío Correo electrónico Administre el control de versiones de sus archivos como un programador con Git

Los programadores crearon sistemas de control de versiones (VCS) para resolver problemas de control de versiones de archivos. Veamos los conceptos básicos del control de versiones con el sistema superior de hoy, Git.

Leer siguiente
Temas relacionados
  • Programación
  • Desarrollo web
  • GitHub
  • Tutoriales de codificación
Sobre el Autor Idisou Omisola(94 Artículos publicados)

Idowu es un apasionado de la tecnología inteligente y la productividad. En su tiempo libre, juega con la codificación y cambia al tablero de ajedrez cuando está aburrido, pero también le encanta romper con la rutina de vez en cuando. Su pasión por mostrarle a la gente el camino en torno a la tecnología moderna lo motiva a escribir más.

Más de Idowu Omisola

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse