Mi proyecto tiene un archivo foo
que he estado usando y registrándome con git
. Acabo de hacer algunas refactorizaciones para que ya no necesite el archivo. Si lo hago git rm foo
, ¿el archivo aún existirá en las confirmaciones más antiguas? ¿Podré verificar un compromiso anterior y trabajar con el archivo?¿Git rm elimina todo el historial de un archivo?
Respuesta
No, git rm
(más la confirmación) escribe un nuevo árbol que refleja que el archivo ya no está presente. El historial completo del archivo, incluida la creación, las modificaciones y la eliminación final, está presente en el historial.
No, git rm
solo eliminará el archivo del directorio de trabajo y agregará esa eliminación al índice. Por lo tanto, solo los compromisos futuros se ven afectados. Todas las confirmaciones anteriores permanecen iguales y el historial se mostrará cuando eliminó el archivo del repositorio.
En general, todas las confirmaciones que haya realizado previamente son permanentes, por lo que nunca debe preocuparse por perder las confirmaciones una vez que se encuentren en algún lugar de la historia. Por supuesto, hay algunas cosas que pueden eliminar o cambiar confirmaciones previas (como el rebasado), pero para la mayoría de las cosas que haces, estás bastante seguro.
¿No debería la primera palabra ser sí? Como él preguntó, ¿puede obtener los archivos de las confirmaciones previas? ¡Y quieres decir que sí! ¿Derecha? – PHcoDer
@PHcoDer I (y supongo que Daniel también) respondió a la pregunta en el título de la pregunta. Entonces, no, git rm no elimina todo el historial. – poke
Podrá descargar cualquier versión anterior utilizando el ID de confirmación conocido con todos los estados que le pertenecen, incluidos los archivos que se eliminan ahora. Ver p. git branch <branchname> < start-point > donde start-point es una identificación de confirmación. Incluso no debe rastrear ese punto de inicio pertenece a la rama actual; Los ID de compromiso serán únicos, por lo que pueden estar en cualquier rama conocida por el repositorio actual.
Puede verificar el historial anterior del archivo usando el comando log; pero no funciona en ninguna sintaxis, para 1.7.7 emitiré "git log - oldpath" en lugar de "git log oldpath" porque de lo contrario no se puede distinguir la ruta de la revisión. Para algunos otros comandos como "culpa", incluso esto no es suficiente: uno debe verificar la revisión anterior para iniciarla.
- 1. Git: ¿muestra el historial de un archivo?
- 2. ¿Mover un archivo en SVN elimina su historial de revisión?
- 3. git add/rm (cometer)
- 4. Git - rm equivalente para "agregar."?
- 5. eliminar el archivo del historial de git no funciona
- 6. ¿Carpeta Cant RM con GIT rm?
- 7. ¿Por qué usar 'git rm' para eliminar un archivo en lugar de 'rm'?
- 8. Mantener el historial de git al dividir un archivo
- 9. git rm -r --cached no elimina la carpeta y el contenido del submódulo
- 10. Xcode pierde historial de git cuando mueve un archivo
- 11. Eliminar archivo con todo el historial del repositorio svn
- 12. Git: deshacer cambios locales; git add. + git rm?
- 13. git branch sin historial
- 14. Exportar git con el historial de versiones
- 15. Subárbol de exportación en Git con historial
- 16. ¿Cómo puedo "censurar" el historial de un repositorio de git?
- 17. git no puede rm - archivos caché
- 18. git rm -cached file vs git reset file
- 19. ¿Guarda el historial de Clearcase en Git?
- 20. Mover un archivo a una nueva carpeta, manteniendo el historial de Git
- 21. Historial de registro de Git
- 22. eliminar un archivo de control de GIT
- 23. Cómo extraer un archivo con historial de commit de un git repo con index-filter & co
- 24. ¿La eliminación de una rama en git la elimina del historial?
- 25. Cygwin: diferencia entre el comando '\ rm -fr' y 'rm -fr'?
- 26. Git: todo el archivo a la salida estándar
- 27. git rm -r no funciona en un submódulo
- 28. ¿Cómo ver el historial de tamaño de archivo de un solo archivo en un repositorio de git?
- 29. GIT: /.git/index.lock ': El archivo existe
- 30. Extrae el subdirectorio git mientras conservas el historial WITH renombra
¿No debería la primera palabra ser sí? Como él preguntó, ¿puede obtener los archivos de las confirmaciones previas? ¡Y quieres decir que sí! ¿Derecha? – PHcoDer