tag subversion hacer entre diferencia create crear con como branches svn version-control perforce

svn - hacer - ¿Perforce para un usuario de Subversion?



merge con svn (6)

Acabo de deslizar la otra dirección. Mi empleador anterior estaba usando Perforce (servidores Linux, clientes Mac y Windows), mi nuevo empleador está en transición a SVN. Esto es lo que me he encontrado:

  • No me pierdo la ramificación de Perforce. Este podría haber sido el medio ambiente sin embargo.
  • Usted debe bloquear! Pero al menos puedes configurar múltiples bloqueos y registros.
  • Odiaba la "línea de comando" de Perforce, puedes acostumbrarte a ella, pero nunca fue simple.

Todavía no soy un fan de Perforce, así que ymmv. En su mayoría, acostúmbrese a usar las interfaces de usuario proporcionadas, bloquee según lo requiera su empleador y tenga cuidado con la lista de cambios en la que está trabajando (es muy fácil enterrarse en las listas de cambios).

Acabo de cambiar de trabajo. Mi empleador anterior usa Subversion, mi nuevo empleador usa Perforce.

¿Hay recursos disponibles que me ayuden, como usuario , a cambiar mi modelo mental de Subversion One a Perforce One? ¿Cuáles son los análogos a los comandos comunes de SVN? ¿Qué conceptos se implementan de manera diferente?

No estoy particularmente interesado en los pros y los contras de Perforce vs Subversion: se tomó la decisión. Hay muchas otras preguntas sobre SO que cubren eso. Me gustaría saber qué reajuste mental tendré que hacer (o no).


Algunas cosas me vienen a la mente (las he usado forzosamente hace cuatro años, las cosas pueden haber cambiado).

  • bloqueo: por lo general, es necesario obtener un bloqueo en los archivos en los que está trabajando. La subversión no lo hace.
  • lista de cambios: las listas de cambios son básicas para trabajar con la fuerza. Cada compromiso es de una lista de cambios. Son menos importantes en la subversión.

Esta entrada de blog puede ayudarte a hacer la transición.


Incluso si no es la presentación más actual, todavía tiene una buena matriz de características (en Perforce y SVN) en este documento .

Puede ser útil leer las Directrices de Perforce Branch Naming y Repository Structure , ya que su estructura es un poco como la de SVN: Perforce utiliza la estructura de repositorio para representar ramas así como otras estructuras de directorios.


Perforce es SOOOO mucho más rápido que SVN porque todas las verificaciones se almacenan en el servidor, por lo que no tiene que revisar todos los archivos en una actualización. SVN funciona mucho mejor cuando se desconecta de la red; con Perforce, debe informar al servidor cuando haya realizado una comprobación. Es Windows GUI es realmente bueno. La línea de comando no es tan fácil como SVN. Google lo usa!


Perforce y Subversion son bastante similares, ambos cuentan con un compromiso atómico de grupos de archivos y una ramificación basada en rutas.

Perforce tiene:

a) Conjuntos de cambios pendientes: puede agrupar los archivos que está editando en grupos y manipular los grupos.

b) Especificaciones del cliente: puede asignar el repositorio a su espacio de trabajo local en esquemas bastante complicados.

c) No externo: por lo tanto, no puede asignar la misma parte del repositorio a varias ubicaciones en su espacio de trabajo, o asignar otros repositorios a subdirigios en su espacio de trabajo.

d) Merge-tracking, que es una nueva característica para Subversion.

e) Conexiones de servidor sólidas: debe informar al servidor antes de editar un archivo, y el servidor utiliza esta información para mantener una buena idea de su estado local de espacio de trabajo, lo que hace que las actualizaciones sean más rápidas.


También ahora estoy aprendiendo Perforce, y lo que me sería útil es una guía de comandos P4 que son equivalentes a los comandos SVN. Comenzaré (alguien más competente es bienvenido para ampliar / editar esta respuesta):

svn commit ... p4 submit svn update ... p4 sync ...