.sln / .csproj对共享Unity项目有用吗?


13

我们在使用GIT和Unity时遇到了一些问题。.sln / .csproj文件经常会给我们带来麻烦,因此在网络上搜索了一会儿之后,我发现也许没有必要推送此文件。有人对此有任何反馈吗?https://gist.github.com/hw/1234398例如,.gitignore中包含这些文件,但老实说我不知道​​这种文件的作用。

我可以将它们从我的存储库中排除,还是该文件与游戏中的某些参考相关?

Answers:


21

从我的亲身经历中,我注意到最好从源代码管理中排除* .csproj和* .sln:每当您打开一个项目或无论如何添加/删除源文件时,Unity都会生成这些文件,因此您不会错过它们。您也可以通过“同步MonoDevelop项目”菜单项手动进行操作。

如果项目中有多个开发人员,将它们排除在外尤其有用,因为对于每个用户,这些文件的自动生成的内容可能会有所不同(这取决于Unity安装路径以及其他一些因素),这可能会导致提交给存储库的大量不必要的文件更改。


4
您还应该排除整个Library /文件夹。
michael.bartnett

您忘了写这只适用于MonoDevelop和VS 20xx。这是完全错误的,因为即使添加新的c#脚本或重新启动unity,使用vscode或rider unity也不会创建任何文件
Herrgott

2

我从不签入.sln或csproj。我只签入实际上是统一的项目。让unity为您管理解决方案文件。如果有些人忘记只从编辑器文件夹中检入.csproj之一,则可能会很头疼。因此,如果有新的编码器进入,他们将签出仓库并使用mondevelop或vs双击文件。

我还要确保也对所有这些文件都进行Scn忽略,所以演出者不要偶然将它们签入,大声笑


如果新的编码器不使用此monodevelop并且由于使用Linux而不能使用vs,该怎么办?
Herrgott '18年

0

您可以安全地排除这些文件,因为它们会由Mono自动重新生成。这些文件中的代码只能从打开的文件中读取,而不能从付费插件的受保护DLL中读取。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.