Quais tipos de arquivo devo excluir do repositório de controle de origem do meu jogo?

11

Comecei a trabalhar em um projeto pessoal usando o Unity com um amigo e montamos nosso próprio sistema de controle de origem.

Estou ciente do fato de que existem muitos tipos de arquivos, especialmente aqueles gerados localmente quando você cria (por exemplo, arquivos do Visual Studio) e aqueles específicos da sua máquina específica que não devem ser adicionados ao controle de origem, mas Não sei exatamente quais são esses tipos de arquivo.

Não quero excluir nenhum arquivo gerado que eu deva incluir, como arquivos .meta.

Alguém seria capaz de listar todos ou pelo menos todos os tipos de arquivos comuns que não devem ser adicionados ao controle de versão, especificamente para um projeto do Unity?

SirYakalot
fonte

Respostas:

9

Com a versão atual do Unity, basta fazer o check-in de qualquer coisa nas pastas Assets e ProjectSettings. Não faça check-in em Biblioteca ou no nível superior.

Tetrad
fonte
8

Uma boa referência para esse tipo de lista são os modelos de gitignore do GitHub . A lista específica do Unity está aqui .

E se você sentir que algo está faltando, faça uma solicitação de recebimento!

Laurent Couvidou
fonte
5

O tipo de arquivo é menos importante que o objetivo e a origem do arquivo; como você disse, qualquer coisa que possa ser gerada a partir dos arquivos de origem sob controle de versão (geralmente) não tem nenhum negócio sendo incluído no próprio repositório.

Da mesma forma, qualquer coisa específica do usuário, como configurações ou arquivos de configuração, deve ser excluída.

Além disso, depende de você e do seu projeto.


fonte
2
Suponho que realmente estou pedindo uma pequena lista de quais arquivos em um projeto de unidade padrão SÃO os arquivos que são gerados ou são específicos do usuário. Além dos arquivos que eu criei manualmente, sou bastante ignorante sobre o que fazer o que e de onde.
precisa saber é o seguinte
Entendo. Editei sua pergunta para esclarecer que, como o bit Unity havia sido removido no momento em que o vi (ou simplesmente o perdi).
3

Você pode dar uma olhada no meu projeto do Unity, Radius , no GitHub como exemplo. Ou faça o checkout do Unity.gitignorearquivo no repositório oficial de gitHub GitHub.

Há também um bom guia de Damien Mayance em seu site sobre os projetos Git e Unity

Verifique seus .metaarquivos, pois é isso que o Unity usa para fazer referência a cada ativo. Você pode torná-los ocultos em seu sistema operacional indo Edit->Project Settings->Editore mudando Version Controlpara Visible Meta Files.

Se você estiver armazenando seu projeto de unidade em uma pasta chamada UnityProjectName, é assim que o seu .gitignore deve ser. Se você tiver apenas a pasta do projeto do Unity como a raiz do repositório do GitHub, basta remover o UnityProjectName/de cada caminho abaixo.

.gitignore

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

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

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

Eu não sei sobre unidade, mas você mencionou o visual studio. Em geral, você pode excluir as pastas bin e obj nas pastas do projeto (em alguns tipos de projeto, a pasta bin também armazena montagens dos projetos incluídos, mas acho que isso se aplica apenas a certos tipos de projetos da web).

Também não se verificar no " " .csproj.user "e arquivos .suo". Esses dois tipos incluem configurações do usuário. Se você fizer o check-in, todas as configurações do usuário serão refletidas nas outras máquinas quando você atualizar a fonte. Isso é bastante irritante, pois essas configurações não são relevantes para o projeto ou construção, mas mais para configurar a interface do usuário, o editor etc. para as necessidades individuais de cada desenvolvedor.

tom van green
fonte