Node:Eliminar directorios, Next:, Previous:Eliminar ficheros, Up:Otros comandos �tiles de CVS



Eliminar directorios

Como he dicho anteriormente, en realidad CVS no mantiene los directorios bajo control de versi�n, sino que, a modo de medida de ahorro, presenta ciertos comportamientos extra�os que en la mayor�a de los casos hacen simplemente "lo que conviene". Uno de estos comportamientos extra�os es que los directorios vac�os pueden tratarse de una forma especial. Si desea eliminar un directorio de un proyecto, primero borre todos los ficheros que contenga

floss$ cd dir
floss$ rm fichero1 fichero2 fichero3
floss$ cvs remove fichero1 fichero2 fichero3
  (salida de informaci�n omitida)
floss$ cvs ci -m "borrados todos los ficheros" fichero1 fichero2 fichero3
  (salida de informaci�n omitida)

y despu�s ejecute "update" en el directorio anterior con la opci�n -P:

floss$ cd ..
floss$ cvs update -P
  (salida de informaci�n omitida)

La opci�n -P le dice al comando "update" que "limpie" cualquier directorio vac�o, esto es, que los elimine de la copia de trabajo. Una vez hecho esto, puede decirse que el directorio ha sido borrado; todos sus ficheros han desaparecido, y el directorio en s� es historia (al menos por lo que respecta a nuestra copia de trabajo, claro, pero sigue habiendo un directorio vac�o en el repositorio).

Una interesante contrapartida de este comportamiento es que, cuando se hace una actualizaci�n normal, CVS no trae autom�ticamente a la copia de trabajo los nuevos directorios que se hayan creado en el repositorio. Hay un par de justificaciones variopintas para esto, ninguna de las cuales vale la pena mencionar aqu�. La explicaci�n breve es que de vez en cuando deber�a ejecutar "update" con la opci�n -d, orden�ndole que traiga cualquier nuevo directorio que haya sido creado en el repositorio.