2010-09-09 24 views

Respuesta

8

Hay git commit -a que es comogit add -u - añade todos los archivos modificados, pero no se le añade archivos sin seguimiento, en contraste con git add ., que añade dos archivos rastreados y sin seguimiento (no incluyendo eliminaciones), siempre que contengan modificaciones.

Ver Difference between "git add -A" and "git add ."

Pero sí, en la mayoría de los flujos de trabajo, que o bien git add antes git commit, o que en su mayoría utilizar git commit -a.

1

Úselo cada vez que agregue un archivo o resuelva un conflicto. No necesita usarlo si solo cambia un archivo, elimina un archivo o cosas de esa naturaleza.

0

Solo use git add cuando tenga archivos nuevos que no estén en control de fuente. De lo contrario, solo haga un buen uso del modificador -a cuando use la confirmación de git.

+1

No voy a votar, pero creo que es un consejo horrible. Una de las mejores características de git es el área de índice/estadificación. Sugeriría hacer un buen uso de eso en su lugar. – camh

+0

@camh: a menos que no necesite o desee el área de preparación. Es indispensable cuando lo necesito, pero la gran mayoría del tiempo solo quiero comprometerme. El consejo de @ Chris está bien. – kubi

1

Uso git add cuando creo que un archivo está listo para ser confirmado, incluso si sé que no lo haré hasta mucho después. Aparte de todo lo demás, git diff informa sobre las diferencias entre lo que está en el índice (área de transición) y lo que está afuera en el directorio de trabajo. Una vez que haya agregado un archivo, no verá diferencias hasta que lo modifique nuevamente. Entonces, si tengo varios archivos, los agrego al índice por partes, y finalmente me comprometo cuando todos los archivos cambiados estén listos. Como resultado, rara vez uso git commit -a. Sin embargo, cada uno para los suyos. Ambos métodos funcionan, y git tiene la amabilidad de no forzar a nadie a trabajar de la manera que quiera (dentro de unos límites), sino que le permite trabajar de la manera que desee.

4

git add le permite organizar su compromiso en piezas. Eso no siempre es necesario si está cometiendo trozos del tamaño adecuado, pero algunas veces es inevitable.

También hace posible obtener una vista previa de una confirmación. Cuando usa git add, los archivos se registran en su índice local, que está separado de su directorio de trabajo. Cuando usa gitk --all, por ejemplo, su índice aparece como cualquier otro nodo de confirmación y puede ver los efectos de todos sus cambios como lo haría con una confirmación normal, antes de comprometerlo con la sucursal.

Lo que me parece extremadamente útil es git add -i, que entra en modo interactivo. También puede usar . Aquí puede elegir qué archivos agregar (e incluso qué partes de los cambios debe agregar al archivo) uno por uno, verificando las diferencias para cada uno.

No hay ninguna razón para usar los comandos de forma independiente si no lo desea, pero definitivamente es conveniente mantener los comandos independientes el uno del otro ya que hacen cosas diferentes y a algunas personas les gusta modificar su índice de trabajo sin cometiendo

Cuestiones relacionadas