Les fichiers .sln / .csproj sont-ils utiles pour partager le projet Unity?

13

Nous rencontrons des problèmes avec GIT et Unity. Il se produit assez souvent que le fichier .sln / .csproj nous pose des problèmes, donc après avoir cherché un moment sur le Web, j'ai constaté que ces fichiers n'étaient peut-être pas nécessaires à pousser. Quelqu'un a des commentaires à ce sujet? https://gist.github.com/hw/1234398 Par exemple, ils sont inclus dans le .gitignore, mais honnêtement, je ne sais pas ce que fait ce type de fichiers.

Puis-je les exclure de mon référentiel ou ce fichier est pertinent pour certaines références dans mon jeu?

Max
la source

Réponses:

21

D'après mon expérience personnelle, j'ai remarqué qu'il est préférable d'exclure * .csproj et * .sln du contrôle de code source: Unity génère ces fichiers chaque fois que vous ouvrez un projet ou ajoutez / supprimez des fichiers source de toute façon, afin de ne pas les manquer. Vous pouvez également le faire manuellement via l'élément de menu "Sync MonoDevelop Project".

Il est particulièrement utile de les exclure s'il y a plus d'un développeur sur le projet, car le contenu généré automatiquement de ces fichiers peut être différent pour chaque utilisateur (cela dépend du chemin d'installation de Unity et probablement d'autres facteurs), ce qui peut entraîner de nombreuses modifications de fichiers inutiles enregistrées dans le référentiel.

Alexander Konstantinov
la source
4
Vous devez également exclure l'intégralité de la bibliothèque / du dossier.
michael.bartnett
Vous avez oublié d'écrire que cela ne fonctionne qu'avec MonoDevelop et VS 20xx. C'est totalement faux parce que l'utilisation de vscode ou de Rider Unit ne créera aucun fichier même si vous ajoutez un nouveau script c # ou redémarrez Unit
Herrgott
2

Je ne vérifie jamais le .sln ou le csproj. Je vérifie uniquement le projet réellement unitaire. Laissez l'unité gérer les fichiers de solution pour vous. Cela peut être un casse-tête si certains oublient de consigner un seul des fichiers .csproj à partir du dossier de l'éditeur ou quelque chose. Donc, si un nouveau codeur arrive, ils vérifient le dépôt et double-cliquent sur un fichier avec mondevelop ou vs.

Je m'assure également de faire un Scn ignorer sur tous ces fichiers aussi, afin que l'artiste ne les enregistre pas par accident à lol

Hector Llanos
la source
que faire si le nouveau codeur n'utilise pas ce monodéveloppement et ne peut pas utiliser vs parce qu'il utilise linux?
Herrgott
0

Vous pouvez exclure ces fichiers en toute sécurité car ils sont automatiquement régénérés par Mono. Le code à l'intérieur de ces fichiers est lu uniquement à partir de fichiers ouverts, et non de DLL protégées, par exemple, d'un plugin payant.

AkiDakiObi
la source