traduccion - Detectando Perforce archivos modificados sin abrir
perforce visual merge tool (5)
Estoy tratando de encontrar una forma de detectar archivos que no están abiertos para edición pero que sin embargo han sido modificados localmente. p4 fstat
devuelve un valor headModTime
para cualquier archivo dado, pero este es el tiempo de cambio en el depósito, que no debe ser igual a la última hora de la última modificación del sistema de archivos.
Espero que exista una operación más liviana que la copia de seguridad del archivo original, forzando una sincronización del archivo, y luego ejecutando un diff. Ideas?
Desde el artículo desconectado trabajando, usando p4win también puede seleccionar la carpeta / archivos en cuestión y seleccionar ''archivo menú-> más-> comprobar consistencia'' que básicamente hace ''p4 diff -se'' y ''p4 diff -sd'', y solicita al usuario que resuelva las incoherencias.
A partir de la versión 2012.1 de Perforce, utilice los comandos de línea de comando p4 status
p4 reconcile
y p4 reconcile
http://www.perforce.com/perforce/r12.2/manuals/cmdref/status.html
El comando de
p4 status
busca archivos sin abrir en el espacio de trabajo de un cliente y detecta los siguientes tres tipos de incoherencias entre su espacio de trabajo y el depósito:
- Archivos presentes en el depósito, presentes en su lista de recursos, pero que faltan en su espacio de trabajo. Por defecto, estos archivos se abren para su eliminación.
- Archivos presentes en su espacio de trabajo, pero faltantes en el depósito. Por defecto, estos archivos están abiertos para agregar.
- Archivos modificados en su área de trabajo que no están abiertos para editar. Por defecto, estos archivos están abiertos para editar.
http://www.perforce.com/perforce/r12.1/manuals/cmdref/reconcile.html
De: http://answers.perforce.com/articles/KB/3481/?q=disconnected&l=en_US&fs=Search&pn=1
Ver el paso 2 específicamente:
2. A continuación, abra para "editar" cualquier archivo que haya cambiado:
p4 diff -se //myclient/... | p4 -x - edit
p4 diff -se devuelve los nombres de los archivos de depósito cuyo archivo de cliente correspondiente difiere de alguna manera del cliente #tiene revisión.
Aquí hay una solución de Unix que me ha funcionado muy bien.
¿Cómo encontrar archivos sin seguimiento en un árbol de Perforce? (análogo del estado svn)
Esta pregunta SO brinda una forma de hacerlo en la GUI de P4V:
En la versión de enero de 2009 de P4V, puede hacer clic derecho en cualquier carpeta en su árbol de área de trabajo y hacer clic en "reconciliar trabajo fuera de línea ..."
Esto procesará un poco y luego mostrará una vista de árbol dividido de los archivos que no están desprotegidos, pero que tienen diferencias con respecto a la versión de depósito o que no están registrados. Incluso puede haber algunas otras categorías que trae a colación.
Puede hacer clic derecho en los archivos en esta vista y verificarlos, agregarlos o incluso revertirlos.
EDITACIÓN posterior:
En la ventana "Reconciliar ...", puede hacer clic en "Reconciliación avanzada" y se le presentará una ventana de diferencias de jerarquía de carpetas de dos paneles que es especialmente útil para encontrar los archivos que necesita agregar.
PROS: Esta característica completa de P4V es más fácil de usar que la versión de línea de comandos (porque permite la máxima granularidad al seleccionar qué reconciliar)
CONS: Necesita .ignore
lista de subversión / git / hg .ignore
, para ahorrarle el .ignore
de omitir manualmente todos los dll y otros crudos en sus proyectos.