GitHub y Unity

Para el proyecto que estoy desarrollando voy a utilizar GitHub como repositorio de archivos y versiones. Aunque muchas veces uso el propio sistema de Unity, por el motivo que sea también vamos a utilizar un sistema general ampliamente utilizado por los desarrolladores de software.


En primer lugar debemos tener una cuenta GitHub que nos podemos hacer gratuitamente. Una vez hecha vamos a utilizar un programa de gestión de versiones como es Sourcetree para gestionar el flujo de las versiones, ramas, etc. de nuestro juego.

Una vez tenemos la cuenta de GitJub, si queremos utilizar SourcreTree necesitas una cuenta de Atlassian Bitbucket. Sin no disponemos de ella la podemos crear en el momento de la instalación o previamente a través de su página web.


A partir de aquí solo tenemos que ejecutar Sourcetree y enlazar las cuentas. En el vídeo tenéis todo el proceso completo. Una vez tenemos en enlace hecho debemos enlazar con la cuenta de GitHub con la opción de Edit account. Aquí diremos que nuestro hostint es GitHub y nos autenticaremos para poder gestionar los proyectos de Git a través de Sourcetree.




Si se trata de un proyecto nuevo, como es el caso, crearemos (+) un proyecto nuevo. Decimos cual es nuestra carpeta local (bebe estar vacía) y le pedimos que cree un repositorio en la cuenta de GitHub.
Una vez creada la cuenta deberíamos poner un fichero de exclusión de ficheros ya que Unity crea muchos archivos temporales que no necesitamos sincronizar con la cuenta de GitHub. Para ello podemos utilizar nuestro propio fichero o utilizar el que podemos encontrar en el proyecto de GitHub de ficheros de exclusión:


Este archivo lo copiaremos en la carpeta raíz de nuestro proyecto. 

 # This .gitignore file should be placed at the root of your Unity project directory  
 /[Ll]ibrary/  
 /[Tt]emp/  
 /[Oo]bj/  
 /[Bb]uild/  
 /[Bb]uilds/  
 /[Ll]ogs/  
 # Never ignore Asset meta data  
 !/[Aa]ssets/**/*.meta  
 # Uncomment this line if you wish to ignore the asset store tools plugin  
 # /[Aa]ssets/AssetStoreTools*  
 # TextMesh Pro files  
 [Aa]ssets/TextMesh*Pro/  
 # Visual Studio cache directory  
 .vs/  
 # Gradle cache directory  
 .gradle/  
 # Autogenerated VS/MD/Consulo solution and project files  
 ExportedObj/  
 .consulo/  
 *.csproj  
 *.unityproj  
 *.sln  
 *.suo  
 *.tmp  
 *.user  
 *.userprefs  
 *.pidb  
 *.booproj  
 *.svd  
 *.pdb  
 *.mdb  
 *.opendb  
 *.VC.db  
 # Unity3D generated meta files  
 *.pidb.meta  
 *.pdb.meta  
 *.mdb.meta  
 # Unity3D generated file on crash reports  
 sysinfo.txt  
 # Builds  
 *.apk  
 *.unitypackage  
 # Crashlytics generated file  
 crashlytics-build.properties  

Ahora ya estas preparados para ir a Unity y crear el proyecto en blanco para empezar a trabajar. Una vez abierto el proyecto de Unity, debemos configurar en Edit > Project Settings para que no guarde archivos en formato binario que no podríamos sincronizar con GitHub.


Finalmente podemos hacer la primera sincronización con GitHub a través de un Stage All y un  Commit en Sourcetree para tener un copia del proyecto en la nube.


1 comentario:

  1. Es un gran proyecto, se ve muy interesante. Sinceramente no conozco mucho del codigo, pero todo lo relacionado con los videojuegos siempre requiere su apoyo. Un saludo desde Adictos Gamers

    ResponderEliminar

Como hacer copias de tu código de Unity con GitHub

Podriamos escribir un libro entero de las bondades de Git para el trabajo colaborativo y la gestión de versiones en un entorno como Unity. D...