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