Pregunta

Cuando agrega un archivo a Perforce, intenta determinar qué tipo de archivo es (texto, binario, utf16, etc.). Esto hace un buen trabajo, pero aparentemente nunca vuelve a comprobar el tipo de archivo después del envío inicial al control de versiones. Un compañero de trabajo recientemente realizó un cambio en un archivo de texto que lo convirtió a Unicode (utf16). Perforce no reconoció esto y todavía lo consideró escribir texto , por lo que cuando otros recuperaron el archivo, estaba dañado.

Solucionamos el problema volviendo a enviar el archivo y cambiando explícitamente el tipo de archivo a utf16 , pero preferiríamos que esto ocurriera automáticamente. Hay formas de obligarlo a usar siempre un cierto tipo de codificación, pero no sé si me gusta esa idea. ¿Alguien ha tratado y encontrado una solución a este problema?

¿Fue útil?

Solución

El soporte técnico de Perforce tenía esto que decir:

  

Perforce no verifica el contenido de   el archivo cuando envía una edición.

     

Comprobando cada edición de archivo individual para   El contenido es potencialmente muy caro.   " texto " y "utf16" no son los únicos   tipos de archivos a tener en cuenta, un archivo   potencialmente podría cambiar el tipo de   " texto " a "binario" por ejemplo.

     

Otro problema es que a veces un   el usuario quiere anular el valor predeterminado   comportamiento de cómo Perforce reconoce una   expediente. ¿Cómo debe reaccionar el servidor?   este caso si el tipo de archivo real lo hace   no coincide con el tipo de archivo del usuario   proporciona?

     

Por estas razones, Perforce solo   determinar el tipo de archivo cuando el archivo   se agrega y toma el " mapa de tipo " y   el parámetro de comando " -t " dentro   cuenta.

     

Por otro lado, puedes prevenir   su situación vuelva a suceder por   empleando un "cambio de contenido" desencadenar.   Este disparador verificaría el contenido   del archivo y compárelo con el   tipo de archivo especificado, rechazando cualquier   enviar que crea una falta de coincidencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top