Una vez que se ha eliminado un directorio usando cvs remove <dir>
y cvs commit
, ¿hay alguna manera fácil de deshacer el cambio, restaurar el directorio en mi copia de trabajo y en el repositorio? Hasta ahora solo he podido encontrar sugerencias que me ayudarían si aún no hubiera realizado la confirmación, o si se tratara de un archivo en lugar de un directorio. Si es posible, me gustaría preservar el historial de los contenidos del directorio.¿Cómo puedo restaurar un directorio eliminado de CVS después de confirmar el cambio?
Respuesta
(respondiendo a mi propia pregunta como lo he descubierto.)
para restaurar un directorio borrado después de la eliminación se haya cometido:
cvs update -d -R -j <rev2> -j <rev1> <dir>
Dónde:
<rev2>
es la revisión que resultado de cometer el quitar.
<rev1>
es la revisión inmediatamente anterior a rev2.
<dir>
es el directorio eliminado.
Supongamos que ha enviado un archivo, pero esto terminó rompiendo algo horriblemente. A continuación, le mostramos cómo deshacer su confirmación:
Obtenga el número de versión después de la confirmación. Puede usar una etiqueta $ Id $ dentro del archivo o estado de cvs. Digamos que la nueva versión es 1.5. Obtenga el número de versión antes de la confirmación. Por lo general, esta será una versión inferior a la actual. Digamos que la versión anterior es 1.4. Ahora hacer esto:
cvs update -j 1.5 -j 1.4 filename
cvs commit nombre Lo anterior es un ejemplo de una fusión. Le solicitó a cvs que tome la diferencia entre las versiones 1.5 y 1.4 y las aplique a su copia de trabajo. El orden de los números de versión es significativo, piénselo como eliminar cambios o retroceder en el historial de versiones.
- 1. ¿Cómo restauro un archivo eliminado en CVS?
- 2. restaurar el eje y eliminado
- 3. Restaurar archivo eliminado del repositorio
- 4. CVS Pedido a un directorio
- 5. ¿Cómo puedo restaurar/etc/nginx?
- 6. ¿Quitar el directorio vacío de CVS?
- 7. ¿Cómo confirmar cambios después de la importación de SVN?
- 8. ¿Cómo confirmar ningún cambio y nuevo mensaje?
- 9. no puedo confirmar los cambios después de fusionarse en SVN
- 10. Problemas al asignar el directorio eliminado al repositorio SVN
- 11. ¿Cómo puedo restaurar el estado del proceso después de un bloqueo?
- 12. Mercurial: Cómo restaurar después de la rebase
- 13. Script para borrar recursivamente el directorio CVS en el servidor
- 14. ¿Cómo cambio el nombre del directorio .git?
- 15. Cómo arreglar el problema cuando la comisión de un cambio en CVS
- 16. ¿Cómo pago un solo archivo de CVS?
- 17. Confirmar un cambio en más de una sucursal en Git
- 18. Recuperar el perfil de bash cargado después de ~/.bash_profile eliminado
- 19. ¿Cómo restaurar un repositorio existente usando TortoiseSVN?
- 20. PyCharm y control de origen, el directorio .idea, confirmar o no confirmar, esa es la pregunta
- 21. Error de SVN después de combinar y confirmar
- 22. CVS archivos comma-v en ático y directorio
- 23. ¿Cómo cambio la extensión de muchos archivos en un directorio?
- 24. ¿Cómo puedo "confirmar" cambios en un submódulo de git?
- 25. Restaurar ActionMode después de cambiar la orientación
- 26. git: cambiar de rama e ignorar cualquier cambio sin confirmar
- 27. ¿Cómo puedo saber si se ha eliminado un `NSManagedObject`?
- 28. ¿Cómo puedo CVS-commit de un archivo binario desde la línea de comando?
- 29. Confirmar cambios solo en un directorio en Git
- 30. Mensaje de advertencia de subversión al intentar confirmar el cambio en la rama
Como dije en la pregunta, los consejos que funcionan para los archivos no ayudan, porque el elemento que se ha eliminado es un directorio. – bythescruff
Las respuestas de bythescruff y Satya me salvan. Los archivos en el directorio que estaba tratando de recuperar tenían revisiones diferentes, así que primero restauré el directorio usando la respuesta de bythescruff, luego restauré los archivos individuales usando la respuesta de Satya. Gracias a los dos. – WileCau