Instalación de git bash (windows)
Link de descarga git bash
Instalación de git bash en (Linux,Mac) Obtener la última versión de lanzamiento disponible (Debian/Ubuntu).
sudo apt-get install git
Para Ubuntu:
sudo add-apt-repository ppa:git-core/ppa
sudo apt update; apt install git
Una vez instalado git bash deberás configurar la terminal con tus credenciales siguiendo las instrucciones.
Abre una terinal de git bash. El primer paso es configurar el nombre de usuario de tu cuenta de github
git config --global user.name "YourNameUser"
Ahora deberás configurar el correo de tu cuenta de github
git config --global user.email youremail@mail.com
Configura de manera predeterminada el editor nano
para nombrar los commit's
git config --global core.editor "nano"
Configuración de administrador de creenciales para Git
git config --global credential.helper wincred
Para ver la configuración que hemos hecho debería usar el comando:
git config --list
para ver más opciones del comando utiliza --help
Comando | Descripción |
---|---|
git init |
Inicializa un repositorio git en el directorio actual. Ejm: Ejecuta este comando dentro del proyecto para inicializar tu área de trabajo: user/local/myrepository$ git init
|
git clone |
Clona un repositorio Git en un nuevo directorio. Ejm: Ejecuta este comando para clonar un repositorio: git clone https://github.com/yourrepository.git
|
git add |
Agrega cambios al área de preparación para ser confirmados en el próximo commit
git add archivo.txt // agregar solo un archivo especificando el nombre git add . // para agregar todos los archivos con cambios
|
git commit |
Toma una instantánea del estado actual del proyecto y la guarda en el historial de Git.
git commit -m "Agregado archivo.txt"
|
git status |
Muestra el estado actual del árbol de trabajo. Ejm: este comando mostrara en lista los chambios que se han echo en el directorio. git status
|
git log |
Muestra el historial de confirmaciones en orden cronológico inverso.
git log
|
git diff |
Muestra las diferencias entre los archivos en el directorio de trabajo y el área de preparación.
git diff namefile.txt
|
git push |
Envía los cambios confirmados en la rama actual al repositorio remoto
git push origin master //nombre de la rama en la cual estas trabajando
|
git pull |
Recupera los cambios del repositorio remoto y los fusiona con la rama actual
Ejm: Se pueden utilizar variantes dependiendo el caso. git pull // recupera los cambios de las rama remoto actual git pull origin master //recupera cambios de una rama 'master' |
git branch |
Lista, crea o elimina ramas del área de trabajo
git branch //muestra todas las ramas locales git branch develop //crea una rama con el nombre 'develop' git branch -d develop // elimina la rama 'develop git checkout -b develop // crea una rama 'develop' y cambia el area de trabajo a la nueva rama
|
git checkout |
Cambia a una rama o restaura archivos del historial de git git checkout master //cambiarse a la rama 'master' git checkout HEAD^ -- file.txt //restaurar un archivo a su estado anterior |
git merge |
Fusiona cambios de otra rama en la rama actual Ejm: Actualmente estoy trabajando en 'develop', al terminar cambios realiza un 'commit' y continua con lo siguiente: git commit -m "feat(app):cambios file.txt rama -> develop" git checkout master // cambio a la rama 'master' para hacer `merge` develop->master git merge develop
|
git stash |
Guarda temporalmente los cambios que aún no estan listos para ser confirmados git stash // guarda los cambios de manera local, puedes hacer un `git pull` para comprobar si existen cambios en la misma rama de trabajo git stash pop //recupera los cambios guardados de manera local
|
Nombrar los commits de manera profesional es importante para mantener un historial de cambios claroo y fácil de mantener
Cada una de las etiquetas tiene un significado específico y ayuda a describir claramente el tipo de cambio que se está realizando en el código fuente. Aquí está una breve descripción de cada una de las etiquetas:
feat
: para una nueva característica o funcionalidad añadida.fix
: para un error o problema corregido.build
: para cambios relacionados con la construcción o configuración del proyecto.chore
: para cambios que no afectan al código fuente, como actualizar dependencias o tareas de mantenimiento.ci
: para cambios en la configuración del sistema de integración continua.docs
: para cambios en la documentación del proyecto.perf
: para mejoras de rendimiento.refactor
: para cambios que no agregan nuevas funcionalidades ni corrigen errores, pero mejoran la calidad del código.style
: para cambios en la apariencia del código fuente, como el formato o la sintaxis.test
: para cambios relacionados con pruebas o casos de prueba.
El usuario “user01” esta haciendo cambios en el archivo.txt
- Paso 1: Cuando este usuario termine de realizar la funcionalidad, este deberá usar un etiqueta como “feat” y seguir lo siguientes pasos:
Agregar el “archivo.txt” a la preparación. para subir cambios
git add archivo.txt
- Paso 2: Este comando abrirá el editor configurado por nano, aquí podrás redactar el commit
git commit
En este caso, se utiliza la etiqueta "feat" para indicar que se ha agregado una nueva funcionalidad. en este caso en la sección de "products", seguido del cambio especificado agregando las acciones realizadas como la siguiente nota.
feat(products): add search functions in the products module -This commit adds a new function to the search bar-This will improve the overall user experience and make it easier to find relevant information. Para guardar los cambios del editor nano, deberás usar Ctrl + o y Ctrl + x para salir del editor Agrega un commit mas corto se puede hacer de la siguiente manera:
git commit -m "fix(products): add search functions in the products module"
Agregar una descripcion más detallada si es necesario desde el editor. Recuerda que configuraste el editor nano, para agregar una descripción mas detallada.
- Paso 3: Enviar los cambios al servidor Github.
Importante descargar cambios de la rama origin, evita conflictos al momento de hacer push
# descargar cambios de rama origin
git pull
# ó
git pull origin master
(master) es una variante de las ramas existentes en el desarrollo Pueden existir más de una, en un solo proyecto.
Enviar los cambios
git push -u origin master
Si te salta algún error, es importante tomar medidas, que apliquen dependiendo el error.