Control de Versiones

Los proyectos de Wonderland Engine fueron diseñados para integrarse bien con cualquier control de versiones y se usan con más frecuencia con git.

Dado que los archivos del proyecto están basados en JSON, se pueden fusionar manualmente. ¡Asegúrate de eliminar las comas finales en los elementos finales de objetos y listas!

UUIDs 

Para evitar conflictos de IDs de recursos de nuevos objetos, puedes hacer que el editor genere UUIDs en lugar de IDs secuenciales cortos y legibles:

Views > Project Settings > Editor > ids (establecer en uuid).

.gitignore 

Lo siguiente es un archivo .gitignore de mejor práctica.

Ten en cuenta que, dependiendo de tu Configuración CI/CD, podrías querer agregar cache para reducir el tiempo invertido en comprimir imágenes en máquinas de compilación menos potentes.

Registrar cache tiene el beneficio adicional de acelerar la primera carga del proyecto después de clonar el proyecto.

 1# Dependencias de NPM
 2**/node_modules/
 3
 4# Archivos de proyecto empaquetados
 5**/deploy/
 6
 7# Datos locales del editor
 8**/.editor/
 9
10# Caché del paquete JS del editor
11**/cache/js/
12
13# Estado local de la UI
14**/imgui.ini
15
16# Archivos de respaldo de Blender
17*.blend1

Git LFS 

La extensión Git Large File Storage puede acelerar las operaciones de Git en tu repositorio, especialmente porque WebXR generalmente contiene archivos grandes para activos 3D, texturas y audio.

Aquí hay algunas recomendaciones para seguir con git lfs track <extensions>:

 1# Archivos de audio
 2*.mp3 *.wav *.ogg *.webm
 3# Archivos de video
 4*.mp4
 5# Archivos binarios de modelos 3D
 6*.glb *.fbx *.bin *.blend *.ply
 7# Archivos de imagen
 8*.png *.jpeg *.webp *.bmp *.exr *.hdr *.basis
 9# Tipos de letra
10*.ttf *.otf
11# Archivos comprimidos
12*.zip *.tar.gz

package-lock.json 

package-lock.json almacena las versiones exactas de las dependencias actualmente instaladas con tu sistema. Cuando usas npm install, ese archivo se actualizará a la última dependencia que coincida con las restricciones dadas en el package.json.

Puedes usar npm ci para instalar las versiones exactas de las dependencias desde tu package-lock.json. Para tener compilaciones reproducibles, querrás registrar este archivo.