Navegación rápida
Comandos habituales
La mayoría de los comandos siguientes procede de it-tools.tech y se complementa con prácticas de desarrollo habituales.
El texto azul de los bloques de código se puede editar para modificarlo y copiarlo rápidamente.
Configuración
Establece el nombre y el correo electrónico globales:
git config --global user.name "WaLudo"
git config --global user.email "waludo@gmail.com" Empezar un proyecto
Inicializa un repositorio Git:
git init Clona un repositorio existente:
git clone https://github.com/WaLudo/waludo-tools.git Commits
Confirma todos los cambios seguidos:
git commit -am "feat: add two cups of coffee" Confirma todos los cambios:
git add .
git commit -m "feat: add five cups of coffee" Añade cambios nuevos al commit anterior:
git commit --amend --no-edit Me he equivocado
Edita el mensaje del commit más reciente:
git commit --amend Deshace el commit más reciente, conservando los cambios:
git reset HEAD~1 Deshace los últimos N commits, conservando los cambios:
git reset HEAD~N Deshace el commit más reciente y elimina todos los cambios:
git reset HEAD~1 --hard Restablece la rama local al estado remoto:
git fetch origin git reset --hard origin/branch-name Varios
Cambia el nombre de la rama local master a main:
git branch -m master main Convención de commits
Consulta la especificación de Conventional Commits v1.0.0 en https://www.conventionalcommits.org/es/v1.0.0/.
Valida tu commit
git commit -m "feat(scope): description" Referencia rápida de tipos
| Tipo | Descripción |
|---|---|
| fix | Corrige un error |
| feat | Introduce una funcionalidad |
| build | Modifica el sistema de compilación (dependencias, interfaces externas, versión de Node, etc.) |
| chore | Cambios no relacionados con la lógica de negocio (proceso de compilación, configuración de herramientas, etc.) |
| ci | Modifica la configuración de integración continua (CI/CD) |
| docs | Modifica la documentación (README, documentación de API, etc.) |
| style | Cambia el estilo del código sin alterar la lógica |
| refactor | Reestructura el código sin cambiar su comportamiento |
| perf | Mejora el rendimiento |
| test | Modifica los casos de prueba |
Ámbito
Puedes añadir un ámbito entre paréntesis después del tipo para aportar contexto:
feat(parser): adds ability to parse arrays
Cambios incompatibles
Un signo de exclamación indica un cambio incompatible y se puede añadir a cualquier tipo:
feat(api)!: send an email to the customer when a product is shipped
También puedes incluir la expresión BREAKING CHANGE en el pie del commit para expresar lo mismo.
Cuerpo y pie de varias líneas
Ejemplo de un commit con cuerpo y pie de varias líneas:
fix: prevent racing of requests
Introduce a request id and a reference to latest request. Dismiss
incoming responses other than from latest request.
Remove timeouts which were used to mitigate the racing issue but are
obsolete now.
Reviewed-by: Z
Refs: #123
Especificación completa
Las palabras clave MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY y OPTIONAL deben interpretarse según RFC 2119: https://www.ietf.org/rfc/rfc2119.txt.
- Cada commit MUST comenzar con un tipo, seguido de un ámbito opcional, un signo de exclamación opcional y dos puntos y un espacio finales obligatorios
- Una nueva funcionalidad MUST usar el tipo feat
- Una corrección MUST usar el tipo fix
- El ámbito MAY aparecer después del tipo; MUST ser un sustantivo que describa una parte del código y estar entre paréntesis, por ejemplo fix(parser):
- La descripción MUST seguir inmediatamente a los dos puntos y el espacio del prefijo de tipo y ámbito
- Tras la descripción breve MAY aparecer un cuerpo largo, que MUST comenzar después de una línea en blanco
- Después de otra línea en blanco MAY aparecer uno o más pies; cada pie MUST contener un token seguido de dos puntos y espacio, o espacio y almohadilla, como separador
- El token de un pie MUST usar un guion en lugar de espacios, por ejemplo Acked-by; la excepción es BREAKING CHANGE
- Un cambio incompatible MUST indicarse con un signo de exclamación en el prefijo o mediante el pie BREAKING CHANGE: descripción
- Si se usa el signo de exclamación, el pie MAY omitir BREAKING CHANGE: y la descripción SHOULD explicar el cambio incompatible
- MAY usarse cualquier tipo además de feat y fix, por ejemplo docs: updated ref docs.
- Las herramientas que implementen la especificación MUST NOT distinguir mayúsculas y minúsculas, salvo que BREAKING CHANGE MUST estar en mayúsculas
- BREAKING-CHANGE MUST ser sinónimo de BREAKING CHANGE cuando se use como token del pie