¿Qué tipos de archivos debo excluir del repositorio de control de código fuente de mi juego?

11

Comencé a trabajar en un proyecto personal usando Unity con un amigo y hemos establecido nuestro propio sistema de control de fuente.

Soy consciente del hecho de que hay muchos tipos de archivos, a saber, aquellos que se generan localmente cuando se construye (por ejemplo, archivos de Visual Studio) y aquellos que son específicos de su máquina en particular que no deben agregarse al control de origen, pero No estoy exactamente seguro de cuáles son estos tipos de archivos.

No quiero excluir ningún archivo generado que deba incluir, como los archivos .meta.

¿Alguien podría enumerar todos, o al menos todos los tipos de archivos comunes que no deberían agregarse al control de versiones, específicamente para un proyecto de Unity?

Sir Yakalot
fuente

Respuestas:

9

Con la versión actual de Unity, simplemente registre cualquier cosa en la carpeta Assets y ProjectSettings. No registre nada en la Biblioteca o en el nivel superior.

Tétrada
fuente
5

El tipo de archivo es menos importante que el propósito y el origen del archivo; como dijiste, cualquier cosa que pueda generarse a partir de los archivos de origen bajo el control de versiones (por lo general) no tiene nada que ver con el repositorio.

Del mismo modo, se debe excluir cualquier cosa específica del usuario, como la configuración o los archivos de configuración.

Más allá de eso, depende de usted y de su proyecto.


fuente
2
Supongo que lo que realmente estoy pidiendo es una breve lista de qué archivos en un proyecto de unidad estándar SON los archivos que se generan o son específicos del usuario. Aparte de los archivos que creo manualmente, soy bastante ignorante en cuanto a qué hacer qué y de dónde.
SirYakalot
Veo. Edité su pregunta para aclarar eso, ya que el bit de Unity se había eliminado cuando lo vi (o simplemente lo perdí).
3

Puedes echar un vistazo a mi proyecto de Unity, Radius , en GitHub como ejemplo. O verifique el Unity.gitignorearchivo en el repositorio oficial de GitHub gitignore.

También hay una buena guía de Damien Mayance en su sitio web sobre los proyectos de Git y Unity.

Asegúrese de revisar sus .metaarchivos, ya que esto es lo que Unity utiliza para hacer referencia a cada activo. Puede hacer que estén ocultos en su sistema operativo yendo Edit->Project Settings->Editory cambiando Version Controla Visible Meta Files.

Si está almacenando su proyecto de la unidad en una carpeta llamada UnityProjectName, así debería ser su .gitignore. Si solo tiene la carpeta del proyecto de Unity como raíz del repositorio de GitHub, simplemente elimine la UnityProjectName/de cada ruta a continuación.

.gitignore

# Ignore unneeded Unity files
# --------------------------------------------------
UnityProjectName/Temp/
UnityProjectName/obj/
UnityProjectName/Library/

UnityProjectName/*.csproj
UnityProjectName/*.unityproj
UnityProjectName/*.sln

# Ignore Custom Builds
# --------------------------------------------------
UnityProjectName/[Bb]uilds/
MLM
fuente
1

No sé sobre la unidad, pero mencionaste Visual Studio. Allí, por lo general, puede excluir las carpetas bin y obj en las carpetas de proyectos (en algunos tipos de proyectos, la carpeta bin también almacena ensamblados de proyectos incluidos, pero creo que esto solo se aplica a cierto tipo de proyectos web).

Tampoco verifique los archivos ".csproj.user" y " .suo". Esos dos tipos incluyen configuraciones de usuario. Si los registra, todas las configuraciones del usuario se reflejarán en las otras máquinas cuando actualice la fuente. Esto es bastante molesto, ya que esas configuraciones no son relevantes para la construcción o el proyecto, sino más para configurar la interfaz de usuario, el editor, etc. para las necesidades individuales de cada desarrollador.

tom van green
fuente