10. diffs

Existen dos formas de generar diffs de ficheros en Perforce, bien entre cambios locales que todavía no se han entregado o bien entre dos árboles (o dentro de una misma rama) del depósito. Estos diffs se generan mediante órdenes distintas, diff y diff2:

p4 diff

Ese comando genera un diff entre los cambios locales y los cambios de ficheros en estado de edición. Los parámetros -du y -dc permiten crear diffs unificados o contextuales, respectivamente. También se puede establecer la variable P4DIFF para que apunte a un diff local. Le recomendamos encarecidamente usar esta orden para revisar sus cambios antes de aplicarlos en el servidor.

p4 diff2

Esta orden crea un diffs entre ficheros dados en el depósito, o entre ficheros especificados en una especificación de rama. La operación tiene lugar en el servidor, así que la variable P4DIFF no surte ningún efecto, aunque las opciones -du y -dc sí pueden usarse. Las dos formas de esta orden son:

% p4 diff2 -b nombrederama

y

% p4 diff2 //depot/ruta1 //depot/ruta2

En todos los casos los diffs se muestran en la salida estándar. Por desgracia Perforce usa un formato de diffs que resulta ser ligeramente incompatible con las herramientas Unix estándar diff y patch. La utilización de la variable P4DIFF para que apunte al verdadero diff(1) puede paliar este problema, o al menos en ciertos casos, puesto sólo funciona con la orden p4 diff. La salida de diff2 debe procesarse para que sea de alguna utilidad (la opción -u de diff2 producirá diffs unificados que serán más o menos compatibles, pero no esto no incluye ficheros nuevos o borrados. Este script puede serle de utilidad para este proceso necesario: http://people.freebsd.org/~scottl/awkdiff.

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>.