Hola!
En otro momento la frase que daría comienzo a este post sería algo así “el diablo sabe más por viejo que por diablo”, ya que todavía estoy la fase de aprender un poco de Unity3D. Y claro, cuando comienzo a hacer POCs no puedo dejar de depender de Visual Studio, TFS o Git para poder ir teniendo un seguimiento de mis cambios. Y como dije al principio, la frase no sería “el diablo sabe más por viejo que por diablo”, sino algo así como “con todas las cagadas que se ha mandado el diablo, mejor que utilice TFSVC o GIT”.
Team Foundation Source Control
Asi que voy a comentar la forma en la que estoy trabajando (por ahora) con proyectos de Unity3D y GIT. En el primero ejemplo voy a mostrar el trabajo con un workspace clásico de TFS con Visual Studio Online. En la configuración de mi WS tengo mapeado el directorio local “E:\srcBruno\Tests” como root para los folders.
Ahora bien, como (hasta donde entiendo) un proyecto de Unity3D es una colección de files en folders, cuando creamos el mismo lo hacemos en una ubicación por debajo de nuestro WS. En este caso, es en la ubicación del WS y con el nombre Uni04
En este caso además para tener un par de archivos C# he agregado un package que trae un ejemplo completo para utilizar con Kinect SDK V1.8 (les recomiendo darle un vistazo aquí). Una vez creado el proyecto, podremos ver varios archivos C#, por ejemplo en la carpeta Assets/KinectScripts.
Este punto es importante. La primera vez que abrimos un archivo C# para editarlo con Visual Studio, el IDE de Unity creará una solución con el nombre del proyecto y el sufijo “-csharp”. En nuestro caso queda “Uni04-csharp”.
A partir de aquí, el camino es el que ya conocemos, botón derecho sobre la solución y “Add solution to source control”.
Importante: Hay que tener en cuenta que por defecto la solución de VS solo agrega los archivos necesarios para una solución .Net. Si quieres almacenar también en TFS los archivos .meta o con otra extensión, debes agregar los mismos a mano.
GIT
El caso de GIT es similar y está atado a la forma de trabajo de Visual Studio con GIT. Al igual que antes creamos un proyecto
Y abrimos el mismo con Visual Studio, para tener una solución de VS.
Cuando seleccionamos la opción “Add solution to source control” veremos que tenemos la posibilidad de elegir entre TFVC y GIT. Para este caso seleccionamos GIT
Y en pocos segundos tenemos un repo local para probar con GIT
Y esta son las partes simples con el setup de la solución, luego los problemas vienen (como siempre) con los archivos que maneja Unity3D. Al ser en su mayoría binario y como no hay forma de hacer un merge o de tener un historico incremental de un archivo binario, pues los cambios se generan por cada versión y puede ser un lío. Yo por ahora no me preocupo, me alcanza con tener el estado del proyecto al día X a la hora Y.
Por cierto recuerda antes de comenzar a trabajar con un gestor de archivos, que debes tener definida una estrategia de branching y merging; no tener definido esto es … morir !!!
Saludos @ Home
El Bruno
![]() |
![]() |
![]() |
Archivado en: Git, Source Control, Team Foundation Server 2013, Team Foundation Service, Unity3D, Visual Studio 2013
