miércoles, 19 de octubre de 2022

GIT - 6 - Cosas Varias.

Mejores prácticas para el trabajo en equipo.

  1. Sincronizar las ramas siempre antes de comenzar a trabajar (git pull)
  2. Evitar tener cambios muy grandes que modifiquen muchas cosas diferentes.
  3. Cuando trabajamos en un gran cambio tiene sentido tener una rama con esas características separadas.
  4. Para facilitar la fusión final del proyecto, combina regularmente los cambios realizados en la rama principal.
  5. Es recomendable tener la última versión del proyecto en la rama main y la versión estable en otra rama separada.
  6. No debes usar rebase para los cambios que se han enviado a repositorios remotos.
  7. Poner buenos mensajes en las confirmaciones. 

Bajar solamente un subdirectorio de un proyecto de Github.


En Github hay veces en que no nos interesa clonar todo el repositorio, si no solamente una carpeta del mismo que es donde está el código que queremos. Los métodos que hemos visto hasta ahora nos descargarían todo el contenido, pero no un subdirectorio en concreto.

Considera por ejemeplo este repositorio:  https://github.com/chema-hg/CURSO-DE-FLASK

Verás que está dividido en carpetas, las cuales corresponden cada una a una lección.
Si quisiéramos clonar solamente una de ellas, la subcarpeta 10, por decir algo, haríamos los siguiente:

1.- Creamos una carpeta en nuestro ordenador donde guardar el contenido, entramos en ella e iniciamos el proyecto.

$ mkdir proyecto
$ cd proyecto/
$ git init
Initialized empty Git repository in /home/chema/Desktop/proyecto/.git/
2.- Indicamos a git donde está el repositorio remoto del proyecto.

$ git remote add origin https://github.com/chema-hg/CURSO-DE-FLASK

3.-  Para cambiar el directorio desde donde clonar la subcapeta que nos interesa:

$ git config core.sparsecheckout true


4.- Le indicamos a git cual es la subcarpeta a clonar. Hay que escribir tal cual el nombre de la subcarpeta. Como yo quiero clonar la número 10: 

$ echo '/POST 10/'>>.git/info/sparse-checkout

5.- Clonamos la subcarpeta. (se utiliza master o main dependiendo de como este llamada remotamente la rama pricipal.)

$ git pull --depth=1 origin master

SALIDA.

remote: Enumerating objects: 196, done.
remote: Counting objects: 100% (196/196), done.
remote: Compressing objects: 100% (143/143), done.
remote: Total 196 (delta 39), reused 136 (delta 24), pack-reused 0
Receiving objects: 100% (196/196), 106.76 KiB | 2.27 MiB/s, done.
Resolving deltas: 100% (39/39), done.
From https://github.com/chema-hg/CURSO-DE-FLASK
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
chema@lenovo:~/Desktop/proyecto$ ls
'POST 10'
chema@lenovo:~/Desktop/proyecto$ cd POST\ 10/
chema@lenovo:~/Desktop/proyecto/POST 10$ ls
inicio.py  static  templates

Y ya tenemos clonada solamente esa carpeta.


¿Que son las PULL REQUEST de Github?


pull request

Normalmente tu puedes clonar los proyectos pero no puedes modificarlos. Pero lo que si puedes hacer es ayudar al desarrollador realizando mejoras en el programa y enviándoselas al propietario para que las revise y si lo considera oportuno las incorpore. Esto se hace a través de esta opción de github "PULL REQUEST". Solo hay que seguir las instrucciones.


¿Qué es botón fork de Github?


opcion fork


Un fork es una copia del repositorio que se guarda en tu cuenta personal de Github. Te permite libremente experimentar con el proyecto, realizando cambios pero sin afectar al proyecto original. 


No hay comentarios:

Publicar un comentario