Control de Versiones
Integración Perforce

Integración con control de versiones (solo Licencias de Equipo)

Unity soporta la integración con los controladores de versiones Perforce y Plastic SCM, consulte estas páginas para información específica sobre la elección de control de versiones.

¿Por qué debería usar control de versiones?

Usar un version control system es más fácil para un usuario o múltiplos usuarios manejar su código. Es un repositorio de archivos con acceso monitorizado, que en el caso de Unity, van a ser todos los archivos asociados con un proyecto de Unity. Con versión control es posible seguir cualquier cambio a la fuente junto con información acerca de quién hizo el cambio, por qué lo hiciera y qué cambiaron/agregaron. Esto hace que sea fácil revertirse a una versión anterior del código, o para comparar las diferencias en las versiones. También se vuelve fácil ubicar cuándo un error por primera vez ocurrió junto con el código que lo pudo causar.

Configurando su control de versiones en Unity

Siga estos pasos una vez que tenga la configuración de su software de control de versiones configurado de acuerdo a sus propias instrucciones:

  1. Configure, o sincronice un espacio de trabajo en su ordenador usando su cliente elegido (diríjase a la Plastic SCM Integration guide o la Perforce Integration guide para ayuda con este paso).

  2. Copie un proyecto existen al espacio de trabajo o arranque Unity y cree un proyecto nuevo en el espacio de trabajo.

  3. Abra el proyecto y vaya al menú Edit->Project Settings->Editor

  4. Escoja su Mode de control de versiones de acuerdo a la versión del sistema de control de versiones que elija.

  5. Llene los ajustes de su version control, como el nombre de usuario / contraseña/ servidor / espacio de trabajo.

  6. Deje Automatic add marcado si quiere que sus archivos sean automáticamente agregados al control de versiones cuando se agregan al proyecto (o a la carpeta en el disco). De lo contrario tendrá que añadir archivos nuevos manualmente.

  7. Tiene la opción de trabajar desconectado. Este modo solo es recomendado para usuarios avanzados que sepan cómo integrar manualmente los cambios de nuevo a su opción de version control (Working offline with Perforce).

  8. Las opciones Asset Serialization, Default Behaviour Mode y Sprite Packer pueden ser editadas para adaptarse a las preferencias de su equipo y su opción de version control.

  9. Haga click en connect y verifique que “Connected” es mostrado encima del botón de connect después de un pequeño rato.

  10. Use su cliente estándar (e.g. p4v) para asegurarse de que todos loas archivos en las carpetas de Assets y ProjectSettings (incluyendo archivos terminando con .meta) son agregados.

N.B. En cualquier punto usted puede ir al menú de Prefences y seleccionar External Tools y ajustar la herramienta Diff/Merge de su Revision Control.

Usando Version Control

En este punto usted debe ser capaz de hacer la mayoría de operaciones importantes de version control directamente haciendo click derecho en lo assets en el project view, en vez de ir a través del cliente de version control. Las operaciones de version control varían dependiendo en qué version control escoja, esta tabla muestra qué acciones están directamente disponibles para cada version control:

Operación de Version Control Descripción Perforce Plastic SCM
Check Out Permite que se hagan cambios al archivo
Diff against head Compara las diferencias entre los archivos a nivel local y en el encabezado
Get Latest Obtiene los últimos cambios y el archivo de actualización No*
Lock Previene que otros usuarios hagan cambios al archivo No**
Mark Add Agrega localmente pero no a version control
Resolve Conflicts Para resolver conflictos en un archivo que ha sido cambiado por múltiplos usuarios No***
Revert Descarta los cambios realizados a archivos abiertos cambiados
Revert Unchanged Descarta los cambios realizados a archivos abiertos sin modificar
Submit Somete el estado actual del archivo a version control
Unlock Suelta lock y permite que se hagan cambios por cualquiera No**

* Para obtener los últimos cambios y actualizar el archivo usando Plastic SCM, usted necesita usar la ventana de version control.

** Bloquear y desbloquear usando Plastic SCM requiere que usted edite un archivo bloqueado específico de Plastic SCM externamente, mire la página “…” para más información

*** Los conflictos son mostrados dentro el menú de version control pero resueltos en el GUI de Plastic SCM.

Plastic SCM Version Control Operations on Mac
Plastic SCM Version Control Operations on Mac
Perforce Version Control Operations on Windows
Perforce Version Control Operations on Windows

Ventana del Version Control

Usted puede mirar sus archivos en su changelist desde Version Control Window (Window->Version Control). Se muestra aquí acoplado junto al Inspector en el editor:

La pestaña ‘Outgoing’ lista todos los cambios locales que están pendientes de una confirmación en el version control, mientras que la pestaña ‘Incoming’ lista todos los cambios que necesitan ser sacados del version control.

Haciendo click derecho en los assets o en changelists en esta ventana hace que usted realice operaciones en estos. Para mover assets entre changelists simplemente arrastre los assets desde una changelist al encabezado del changelist de destino.

Iconos

Los siguientes iconos son mostrados en el editor de Unity para visualizar el estatus del version control para archivos/assets:

Iconos Significado Información adicional
Archivo agregado localmente Adición pendiente a version control
Archivo agregado a version control por otro usuario Adición pendiente a version control
El archivo es checked out por usted  Checked out localmente
El archivo es checked out por otro usuario Checked out a distancia
Ha habido un conflicto fusionando este archivo Necesita ser resuelto
El archivo ha sido eliminado por usted Una eliminación pendiente en version control
El archivo ha sido eliminado por otro usuario Una eliminación pendiente en version control
El archivo aún no está bajo version control n/a
El archivo está bloqueado por usted No puede ser modificado por otros usuarios
El archivo está bloqueado por otro usuario No puede ser modificado por usted
Otro usuario ha checked in una nueva versión de este archivo Use “Apply Incoming Changes” para obtener la última versión

Cosas para tener en cuenta:

  • Ciertos version controls o va a permitirle editar assets hasta que estén marcados como Checked out ( al menos de que tenga marcado Work offline).
  • Cuando guarde cambios a un archivo .scene automáticamente va a ser demarcado(Checked out).
  • Los Inspectors de Project Settings tienen un botón checkout en la parte inferior a la derecha que le permite marcar los ajuste.
  • Una advertencia amarilla va a aparecer normalmente para recordarle demarcar elementos con el fin de hacer cambios en ellos, esto en la mayoría aplica a los inspectors de Project Settings.
  • En Plastic SCM, los assets automáticamente generados como los lightmaps son automáticamente agregados/checked out.

Reversión automática de los archivos no modificados enviados

Al trabajar con Assets, Unity comprueba automáticamente ambos el archivo asset como el archivo .meta asociado. En la mayoría de situaciones, sin embargo, el archivo .meta no es modificado, lo que podría causar un poco de trabajo adicional e.g. al combinar ramas en un momento posterior.

Modo Sin Conexión

Unity apoya trabajar en modo fuera de linea, e.g, para continuar trabajando sin una conexión de red con el repositorio de su versión de control.

  • Seleccione Work offline desde los ajustes del version control, si quiere ser capaz de trabajar desconectado del version control.

Solución de Problemas(Troubleshooting)

Si Unity por alguna razón no puede confirmar los cambios a su cliente de version control, e.g. si el servidor está caído o problemas de licencia, los cambios se guardan en un conjunto de cambios(changeset) por separado.

Trabajando con el Asset Server

Para trabajo con el Asset Server (el sistema de Version Control interno de Unity) dirigirse a Asset Server documentation.

Trabajando con otros sistemas de control de versiones

Para trabajar con sistema de version control no soportado por Unity, seleccione MetaData como el Mode para version control en las Editor Settings. Esto le permite manejar los assets fuente y metadatos para esos assets con un sistema de version control de su elección. Para más sobre esto, mire la documentación acerca de External Version Control Systems

Control de Versiones
Integración Perforce