Helix Core — version control from Perforce — offers plugins and integrations for everyone on your team. Developers, designers, and third-party contributors can use the tools they love. And you can still maintain a single source of truth across teams.

 

TRY HELIX CORE FREE

 

Full Video Transcript

English

En este video vamos a ver cómo configurar y utilizar P4VS, el plugin de Perforce para Visual Studio.

Instalar P4VS es fácil. Basta con descargar el plugin gratuito desde el sitio web Perforce y hacer doble clic en él para instalar P4VS en Visual Studio, o instalarlo desde Visual Studio, más concretamente desde su “Gallery” (Galería). Usted tendrá que utilizar Visual Studio 2008, o posterior, además de un servidor Perforce en la versión 2009.2 o posterior. Necesitará un servidor Perforce en la versión 2012.1 o posterior para aprovechar las últimas características en P4VS, como P4Sandbox y “streams”.

Una vez que haya instalado P4VS verá que aparece en el “Extension Manager” (Administrador de extensiones).

A continuación, vaya al menú “Options” (Opciones) y asegúrese de que P4VS esté seleccionado como su proveedor de control de código fuente.

El resto de las opciones de control de código fuente le permiten configurar P4VS. Por ejemplo, puede seleccionar qué herramientas “diff” y “merge” va a utilizar, si usted no desea utilizar el programa de utilidad propio de Perforce, P4Merge.

Otra opción importante define cómo P4VS determinará la información de conexión Perforce, como su servidor de Perforce, nombre de usuario y “workspace”.

La opción por defecto le permite seleccionar la información de conexión Perforce cada vez que abra un proyecto bajo control de código fuente. En su lugar, puede optar por conectarse a través de su última conexión; conectarse a través de la configuración específica de una solución de proyecto; o dejar que P4VS detecte su conexión desde su entorno de instalación de Perforce.

Para la mayoría de los usuarios, el resto de las opciones por defecto será aceptable.

Si desea conectar un nuevo proyecto a versionar a Perforce, tendrá la opción de añadirlo en el momento de su creación. Sólo asegúrese de que está trabajando en un directorio del “workspace” de Perforce.

Si se olvida este paso, puede agregar los archivos a Perforce después; tendrá que conectarse al servidor Perforce y añadir los archivos manualmente.

Para este tutorial, voy a abrir un proyecto de Visual Studio existente que otra persona creó y del que hizo el “check in”. Ya he sincronizado los archivos de proyecto a mi “workspace”. Como seleccioné la opción de configuración de conexión por defecto, ahora recibo la información de conexión Perforce.

Una vez que estoy conectado, haré “Drill Down” a la solución en el navegador “depot” y lo abriré.

Observe que el proyecto se encuentra conectado ahora a Perforce, y veo algo de información básica Perforce, como los números de revisión, en el explorador de soluciones. El icono del archivo muestra el estado actual de cada archivo bajo control de versiones. También puedo abrir vistas específicas vía “View Menu”, para mostrar “Workspaces”, Historia de un archivo, “Jobs” y otros. A estas vistas se puede acceder también vía la barra de herramientas, son acoplables y se puede cambiar el tamaño como en otras vistas de Visual Studio. Ahora echemos un vistazo a cómo puede utilizar Perforce para ayudarle a trabajar en Visual Studio. Utilizo Perforce "Jobs", como una manera de integrar con el “defect tracking” (seguimiento de defectos). Voy a echar un vistazo rápido a los “jobs” a mí asignados. Puedo ver que hay uno relacionado con la función “Get Changelist” (Obtener lista de cambios), por lo que voy a empezar a trabajar en "Changelist.cs".

Fíjese que me señaló que hiciera "Check Out" del archivo cuando empecé a hacer cambios. Aquí también puedo seleccionar la “changelist” pendiente a la que me gustaría añadir este archivo. Si selecciono la opción “Don’t show this dialogue again” (No mostrar este diálogo otra vez), no le aparecerá la próxima vez con este cuadro de diálogo.

Si usted selecciona esta opción se añadirá el archivo a la "changelist" activa, especificada en la barra de herramientas de conexión. Una vez que el archivo está “checked out” se puede ver que el icono de este archivo ha cambiado en el Explorador de soluciones, que nos muestra que, efectivamente, este archivo está “checked out”.

Ahora voy a añadir código para solucionar el problema de fuera de rango con "Get Changelist” (Obtener Changelist). Voy a guardar mis cambios y aparecerá la herramienta de "Diff" para comparar mis cambios al de "Have Revision".

Puedo ver fácilmente las diferencias entre el archivo que tengo en el "Depot" y mi archivo local donde acabo de hacer ediciones.

Puedo hacer “Shelve” de este cambio para dejar que otra persona haga el “review” (lo revise) antes del “Check In”. “Shelving” almacena una copia del archivo en el servidor sin hacer oficialmente “Submit” (Enviar). Voy a cambiar la propiedad de esa "Changelist" a mi Team Lead "Duncan" para que pueda revisar mis ediciones antes de que sean “submitted” (enviadas).

Ahora que he hecho "Shelve" de este cambio, haré “log in” (iniciar sesión) como Duncan y haré “review” del mismo. La barra de herramientas de conexión es una forma práctica para cambiar rápidamente las conexiones, así como para crear nuevas conexiones a "Workspaces" de uso frecuente. También puede utilizar la barra de herramientas de conexión para establecer el valor por defecto de la "Changelist" e incluso del "Stream" en curso.

Ahora que estoy conectado como Duncan, puedo hacer "Diff" del archivo “shelved” en relación a su revisión origen. De esa forma para hacer la “review”, no tengo que hacer "unshelve" ni siquiera hacer “sync” del archivo localmente. Aquí Duncan ve los mismos "Diffs" que se vieron cuando se hizo "Diffing against Have". Duncan incluye algunos comentarios para devolverme para “review”, por lo que editaré esta "Pending Changelist".

Y ahora Duncan puede asignarme esa "Pending Changelist" de nuevo.

Voy a usar la barra de herramientas de la conexión de nuevo para entrar como yo mismo.

Y luego voy a hacer "Unshelve" de este archivo para poder hacer los cambios que Duncan sugirió.

Tenga en cuenta que me avisa de que el archivo que se muestra actualmente en el editor de Visual Studio se ha modificado. Esto es normal ya que acabo de hacer "Unshelve" de este archivo. Voy a seguir adelante y hacer clic en "Yes" para volver a cargar el archivo.

Y ahora voy a hacer los cambios que Duncan pidió.

Ahora es el momento de hacer "Submit" (enviar) de este cambio.

Voy a abrir el navegador "Jobs" para que pueda enlazar con el "job" al que este cambio fue asignado originalmente.

Y está mi "job" original por lo que voy a seguir adelante seleccionándolo.

También me aseguraré de que el estado de "Job status upon submit” está como “Closed” (cerrado) cuando hagamos "Submit " (enviar) de este cambio.

Y también voy a editar la descripción de la "Changelist".

Observe que el icono del archivo cambió de nuevo ya que este archivo ya no está “checked out".

Al estar trabajando en un "Streams Depot" es fácil determinar si hay "merges" o copias que tengo que tener en cuenta.

Voy a abrir la ventana de herramientas “Streams” y a ver si hay algún trabajo pendiente como resultado de ese último “submit”.

Puedo ver que hay una copia que tiene que ir a la "Mainline", por lo que voy a ejecutarlo.

En primer lugar me gustaría obtener una vista previa de la copia. Creo que el único archivo que debe copiarse es "changelist.cs" y puedo confirmarlo con una vista previa.

Esto parece correcto por lo que voy a proceder con la copia.

Y cuando se me pida que seleccione una "Changelist" para la copia, voy a seleccionar una nueva "Changelist" en lugar de la de por defecto.

Esto me permitirá introducir una descripción.

Escribiré una descripción.

y vinculo ese mismo "job" que asigné en el “Stream” de desarrollo.

Y a continuación "Submit" (Enviar).

Y ahora que la "Mainline" está actualizada el mismo cambio está listo para la línea “release”.

En este caso, mi equipo utiliza la integración continua, con "builds" en funcionamiento en "main".

Voy a esperar hasta que nuestro control de calidad cree un "build" para confirmar el "job" que puse como “closed” y lo ponga como “Fixed verified”.

Ahora echemos un vistazo a la historia de este archivo en la ficha “P4VS File History” (Historial del archivo de P4VS).

Para cada revisión del archivo, puedo ver toda la información asociada como la fecha, el autor del “submit” y mucho más.

La vista “time-lapse view” me da una forma más fácil de ver la evolución de este archivo.

Tenga en cuenta que P4VS lanza la herramienta P4V’s “time-lapse view”. (Necesitará tener instalado P4V, el cliente GUI multiplataforma de Perforce, con el fin de utilizar esta función.) También puedo invocar el gráfico de revisiones “Revision Graph”. Por estar trabajando en un”stream” de Perforce, veo aquí también una opción de menú para el ”Stream Graph”.

Insistir de nuevo en que la mayoría de las operaciones de Perforce están disponibles desde los menús contextuales del Explorador de soluciones o bajo el menú Perforce.

Esto finaliza nuestra visión rápida de cómo trabajar con Perforce en Visual Studio con P4VS. Si tiene preguntas técnicas durante la instalación o uso de P4VS, por favor póngase en contacto con [email protected] ¡Gracias por su interés!