Control de versiones con Git y GitHub
10. Inicializar Git #
Dentro de taskapp:
1git init
Comprobamos:
1git status
Nuestro .gitignore debe contener:
1node_modules/ 2dist/
Así no subimos dependencias ni el resultado generado por Vite.
11. Añadir los archivos #
1git add .
Comprobamos:
1git status
Creamos el primer commit:
1git commit -m "Primer commit"
12. master vs main: antiguo y actual #
Forma antigua: era habitual que la rama principal se llamara master:
1git branch
y aparecía:
1* master
Forma actual: lo habitual es utilizar main.
Podemos renombrar la rama:
1git branch -M main
Por tanto:
1ANTES ACTUALMENTE 2master main
No significa que master haya dejado de funcionar. Simplemente main se ha convertido en la convención habitual y es el nombre predeterminado en muchos servicios.
13. Crear el repositorio en GitHub #
En GitHub www.github.com creamos un repositorio llamado, por ejemplo:
1taskapp
Para que esta práctica sea más clara, lo crearía vacío, sin README, .gitignore ni licencia, porque esos archivos ya los tenemos localmente.
GitHub nos proporcionará la URL del repositorio.
14. Asociar el repositorio local con GitHub #
1git remote add origin https://github.com/USUARIO_XXXX/taskapp.git
Podemos comprobarlo:
1git remote -v
15. Primer push: antiguo y actual #
Forma antigua #
Si la rama se llamaba master:
1git push -u origin master
Forma actual #
Con main:
1git push -u origin main
La opción -u establece la relación entre:
1main local 2 ↓ 3origin/main 4 ↓ 5GitHub
Por eso, en los siguientes cambios ya normalmente basta con:
1git push
16. Flujo habitual a partir de ahora #
Modificamos nuestra aplicación y hacemos:
1git status 2git add . 3git commit -m "Añadida eliminación de tareas" 4git push
17. Otro comando antiguo que conviene conocer #
Para descargar un repositorio:
1git clone https://github.com/USUARIO/taskapp.git
Eso sigue siendo totalmente actual.
Pero para cambiar de rama encontrarás muchos tutoriales con:
Forma tradicional:
1git checkout main
Forma moderna y más específica:
1git switch main
Para crear una rama:
Tradicional:
1git checkout -b nueva-funcionalidad
Moderna:
1git switch -c nueva-funcionalidad
Hay una razón interesante detrás de switch y restore: antiguamente checkout hacía demasiadas cosas diferentes. Git introdujo comandos más específicos: