Inicialicemos un nuevo proyecto.
Proyecto de $ Mkdir
Proyecto de $ CD
$ git init
Repositorio de git vacío inicializado en/usuarios/zakh_eecs/_work/aprendizaje/git_add/proyecto/.git/
$ echo "nuevo proyecto"> Readme.TXT
$ git agregar lectura.TXT
$ Git Commit -M "Commit inicial"
[Maestro (Root-Commit) 47B9AF1] Conjunto inicial
1 archivo cambiado, 1 inserción (+)
Crear modo 100644 Readme.TXT
En este proyecto, hemos agregado un ReadMe.archivo txt. Usamos el comando "git add" para agregar el readme.TXT. El comando Agregar no es solo para agregar archivos. También agrega cualquier modificación del archivo. Para este tutorial, solo agregaremos y eliminaremos archivos para mantenerlo simple. Pero piense en el comando Agregar como agregar cambios al área de puesta en escena. Luego, debe usar el comando de confirmación para hacer que los cambios sean oficiales.
Cuando se trata de muchos archivos y carpetas, es difícil agregar individualmente cada cambio. Para que pueda usar los siguientes comandos:
$ git add .
$ git add -a
Veamos cómo se comportan los dos comandos:
$ touch a.txt b.txt c.TXT$ touch x.txt y.txt z.TXT
$ git add -a
Estado de $ git
En rama maestro
Cambios a ser cometidos:
(Use "Git Restinir Head ..." a Unstage)
Nuevo archivo: x.TXT
nuevo archivo: y.TXT
Nuevo archivo: Z.TXT
$ git commit -m "add x.txt, y.txt, z.TXT"
[Maestro 8AF8C12] Agregar x.txt, y.txt, z.TXT
3 archivos cambiados, 0 inserciones (+), 0 deleciones (-)
Crear modo 100644 x.TXT
Crear modo 100644 Y.TXT
Crear modo 100644 z.TXT
Ambas opciones parecen funcionar de la misma manera.
Para investigar más a fondo, creemos una situación en la que agregamos algo al nivel raíz del directorio de trabajo y luego agregamos más archivos en una carpeta:
$ touch 1.TXT
$ mkdir nuevo
$ CD nuevo
$ touch m.txt n.txt o.TXT
$ git add .
Estado de $ git
En rama maestro
Cambios a ser cometidos:
(Use "Git Restinir Head ..." a Unstage)
nuevo archivo: m.TXT
Nuevo archivo: n.TXT
Nuevo archivo: o.TXT
Archivos sin seguimiento:
(Use "git add ..." para incluir en lo que se cometirá)
… /1.TXT
Observe que Git no agregó el 1.archivo txt en la carpeta de nivel superior.
Si creamos una carpeta llamada anidadas con D.archivo txt y use el git add. comandar de nuevo, vemos que O.se ha agregado txt pero 1.txt aún no se agrega.
$ mkdir anidado
$ touch anidado/d.TXT
$ git add .
Estado de $ git
En rama maestro
Cambios a ser cometidos:
(Use "Git Restinir Head ..." a Unstage)
nuevo archivo: m.TXT
Nuevo archivo: n.TXT
nuevo archivo: anidados/D.TXT
Nuevo archivo: o.TXT
Archivos sin seguimiento:
(Use "git add ..." para incluir en lo que se cometirá)
… /1.TXT
Ahora usemos el comando git add -a:
$ git add -a
Estado de $ git
En rama maestro
Cambios a ser cometidos:
(Use "Git Restinir Head ..." a Unstage)
nuevo archivo:… /1.TXT
nuevo archivo: m.TXT
Nuevo archivo: n.TXT
nuevo archivo: anidados/D.TXT
Nuevo archivo: o.TXT
Ahora, 1.Txt en la carpeta se ha agregado al área de puesta en escena.
Así es como se ven las carpetas
Entonces, cuando estás usando "Git Agregar ."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 potentes de agregar archivos modificados. Puede usar sus códigos jerarquía de directorio natural para controlar lo que se agrega.