2012-05-16 31 views
5

Así que me he apoderado de un sitio web, algunos de los cuales han estado bajo el control de versión de git (uno de los desarrolladores lo utilizó, el otro no). Así que voy a comprometer todo hasta ahora y trabajar desde allí.git add/rm (cometer)

Sin embargo, hay algunos archivos con un estado de git que no entiendo del todo. Y se clasifican como:

# Changed but not updated: 
# (use "git add/rm <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 

Así que si me comprometo sólo tiene que ejecutar git, serán los cambios realizados en estos archivos se abren camino en el repositorio? Es solo que no entiendo por qué agregarías/rm: parece agregar y luego eliminar todo en un solo asalto.

Gracias por su ayuda!

+0

posible duplicado de [Git: archivo "cambiado pero no actualizado"] (http://stackoverflow.com/questions/4812096/git-file-changed-but-not-updated) – Perception

+0

La sugerencia no sugiere que usted debería agregarlos y corregirlos. Dice que son dos comandos que pueden hacer lo que quieras. (También creo que tienes una versión anterior de Git; en versiones más recientes, dirá "Cambios que se deben confirmar" o "Cambios no configurados para la confirmación", y rm no es parte de las sugerencias). – Cascabel

+0

Además de actualizar Git, dado el tipo de preguntas que hace, es posible que desee leer más documentación, por ejemplo [Pro Git] (http://git-scm.com/book). – Cascabel

Respuesta

1

Estos archivos están configurados pero no confirmados. Sí, si simplemente ejecutas git commit, se comprometerán. Más al punto, ¿quieres comprometer estos archivos? Pueden o no ser lo mismo que sus archivos de trabajo. http://gitready.com/beginner/2009/01/18/the-staging-area.html es una introducción al descenso del área de preparación.

+0

Gracias, ¿entonces qué es lo que git está listo para comprometer (potencialmente) diferente de lo que está en la copia de trabajo? – penguin

+0

Sí. El área de preparación es "lo que estoy por comprometer". Esto le permite comprometer solo partes de archivos modificados, para verificar que su confirmación sea como usted lo desee, etc. Aunque es uno de los conceptos más "no hay cuchara" en git, también es uno de los más potentes. – robrich

+0

Genial. Entonces, ¿hay alguna forma de diferenciar entre el área de preparación y la copia de trabajo? – penguin

4

Por lo general, si usted quiere tomar las cosas como están en la carpeta de trabajo que lo haría

git add -A 

que organizar todos los cambios incluyendo el acto de la eliminación de un archivo y de los archivos de seguimiento sin seguimiento todavía.

Es aconsejable revisar el archivo de .gitignore antes de hacer esto por lo que no cometer los artefactos no deseados que pueden engruesan su repositorio y contaminar la salida de diff y parches.

Una vez hecho esto, puede

git commit 

para registrar los cambios en la historia. Luego puede

git push origin your_branch_name 

compartir este nuevo historial con el control remoto que configuró.

Cuestiones relacionadas