Inicialicemos un nuevo proyecto.
proyecto $ mkdir$ cd proyecto
$ git init
Repositorio de Git vacío inicializado en / Users / zakh_eecs / _work / LearnGIT / git_add / project /.git /
$ echo "Nuevo proyecto"> Léame.TXT
$ git agregar Léame.TXT
$ git commit -m "Confirmación inicial"
[master (root-commit) 47b9af1] Confirmación inicial
1 archivo modificado, 1 inserción (+)
modo de creación 100644 Léame.TXT
En este proyecto, hemos agregado un archivo Léame.archivo txt. Usamos el comando "git add" para agregar el archivo Léame.TXT. El comando agregar no es solo para agregar archivos. También agrega cualquier modificación de archivo. Para este tutorial, solo agregaremos y eliminaremos archivos para que sea más simple. Pero piense en el comando agregar como agregar cambios al área de preparación. Luego, debe usar el comando de confirmación para hacer que los cambios sean oficiales.
Cuando se trata de una gran cantidad de archivos y carpetas, es difícil agregar individualmente cada cambio. Entonces puedes usar los siguientes comandos:
$ git agregar .$ git add -A
Veamos cómo se comportan los dos comandos:
$ tocar un.txt b.txt c.TXT$ git agregar .
estado de $ git
En el maestro de la sucursal
Cambios a comprometer:
(use "git reset HEAD
nuevo archivo: a.TXT
nuevo archivo: b.TXT
nuevo archivo: c.TXT
$ git commit -m "Agregar un.txt, b.txt, c.TXT"
[master 9ca90fc] Agregar un.txt, b.txt, c.TXT
3 archivos modificados, 0 inserciones (+), 0 eliminaciones (-)
modo de creación 100644 a.TXT
modo de creación 100644 b.TXT
modo de creación 100644 c.txt $ toque x.txt y.txt z.TXT
$ git add -A
estado de $ git
En el maestro de la sucursal
Cambios a comprometer:
(use "git reset HEAD
nuevo archivo: x.TXT
nuevo archivo: y.TXT
nuevo archivo: z.TXT
$ git commit -m "Agregar x.txt, y.txt, z.TXT"
[master 8af8c12] Agregar x.txt, y.txt, z.TXT
3 archivos modificados, 0 inserciones (+), 0 eliminaciones (-)
modo de creación 100644 x.TXT
modo de creación 100644 y.TXT
modo de creación 100644 z.TXT
Ambas opciones parecen funcionar igual.
Para investigar más a fondo, creemos una situación en la que agreguemos algo en el nivel raíz del directorio de trabajo y luego agreguemos más archivos en una carpeta:
$ toque 1.TXT$ mkdir nuevo
$ cd nuevo
$ toque m.txt n.txt o.TXT
$ git agregar .
estado de $ git
En el maestro de la sucursal
Cambios a comprometer:
(use "git reset HEAD
nuevo archivo: m.TXT
nuevo archivo: n.TXT
nuevo archivo: o.TXT
Archivos sin seguimiento:
(use "git add
… / 1.TXT
Tenga en cuenta que Git no agregó el 1.txt en la carpeta de nivel superior.
Si creamos una carpeta llamada anidada con d.txt y usa el git add. comando de nuevo, vemos que o.txt se ha agregado pero 1.txt aún no se ha agregado.
$ mkdir anidado$ touch anidado / d.TXT
$ git agregar .
estado de $ git
En el maestro de la sucursal
Cambios a comprometer:
(use "git reset HEAD
nuevo archivo: m.TXT
nuevo archivo: n.TXT
nuevo archivo: anidado / d.TXT
nuevo archivo: o.TXT
Archivos sin seguimiento:
(use "git add
… / 1.TXT
Ahora usemos el comando git add -A:
$ git add -Aestado de $ git
En el maestro de la sucursal
Cambios a comprometer:
(use "git reset HEAD
nuevo archivo:… / 1.TXT
nuevo archivo: m.TXT
nuevo archivo: n.TXT
nuevo archivo: anidado / d.TXT
nuevo archivo: o.TXT
Ahora, 1.txt en la carpeta se ha agregado al área de preparación.
Así es como se ven las carpetas
| --1.TXT
| --Leeme.TXT
| --a.TXT
| --b.TXT
| --c.TXT
| --x.TXT
| --y.TXT
| --z.TXT
'-- nuevo
| --m.TXT
| --n.TXT
| --o.TXT
'-- anidado
| --d.TXT
Entonces, cuando usa "git add ."Comando, agregará todos los cambios de ese nivel. Pero cuando usa la opción "git add -A", buscará modificaciones en todo el módulo y las agregará.
Conclusión
El comando Git add proporciona formas poderosas de agregar archivos modificados. Puede usar la jerarquía de directorios natural de sus códigos para controlar lo que se agrega.
Estudio adicional:
- https: // git-scm.com / docs / git-add
- Git: aprende el control de versiones con Git: una guía paso a paso para principiantes
- Control de versiones con Git: potentes herramientas y técnicas para el desarrollo de software colaborativo
- Pro Git, segunda edición