12 El trabajo con “diffs”

Algunas veces puede ser necesario aplicar un “diff” al árbol de Perfoce que provenga de otra aplicación. Si se trata de un “diff” de gran tamaño y que afecta a muchos ficheros, puede resultar tedioso ejecutar manualmente p4 edit sobre cada fichero. Hay un truco para hacerlo de una forma más sencilla. En primer lugar, asegúrese de que no hay ficheros abiertos en su cliente y de que su árbol está sincronizado y actualizado a la última versión. A continuación aplique sus cambios mediante las herramientas habituales, y forzando los permisos de los ficheros en caso de ser necesario. Después ejecute lo siguiente:

% p4 diff -se ... |xargs p4 edit
% p4 diff -sd ... |xargs p4 delete
% find . -type f |xargs p4 add

La primera orden le dice a Perforce que busque los ficheros que han cambiado, incluso si no están abiertos. La segunda orden le dice a Perforce que busque los ficheros que no existen en la máquina local pero que sí están en el servidor. La tercera orden intenta añadir todos los ficheros que están en local. Es un método de fuerza bruta, pero funciona bien porque Perforce sólo añadirá los ficheros que le resulten desconocidos. El resultado de estas órdenes es un conjunto de ficheros abiertos para edición, borrado o para ser añadidos, según el caso. Hecho esto solo nos queda ejecutar p4 submit para entregar los cambios.

Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista <questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.