为什么 Github 上的统一项目需要 .gitignore?

Why is a .gitignore needed for unity projects on Github?

我对 .Gitignore 的想法很陌生,但我知道它告诉 git 在提交过程中忽略某些文件,为什么要忽略 Unity 项目中的任何 Unity 文件?

广泛地刷它,大多数时候对于大型 IDE 项目,想法*是 不对生成的文件进行版本化 ,因为它们往往会经常更改,如果并非总是如此,而且 merging/diffing 它们通常毫无意义。

你版本你的源代码,你从它构建,生成你的应用程序需要的任何工件运行,在源代码控制之外。

Unity 文件似乎属于这一类。你可以在网上找到资源,有不同的指南可以在 Unity 项目中有效地使用 git。这是one, updated recently. And a search here on SO on appropriate tags is quite fruitful。不要犹豫,比较不同的设置以选择最适合您的特定环境的设置。


此外,在 GitHub 上你有这个(感谢 derHugo 的 link):

https://github.com/github/gitignore/blob/master/Unity.gitignore


也有用,在评论后添加:

.gitignore official doc(所有页面都是有用的阅读,但要特别注意 "pattern formats" 以调整您自己的模式)

测试模式的有用工具:git check-ignore <path>

* (双关语无意)

据我所知,您真正需要提交到您的存储库的唯一内容是您的资产目录,其余的可以忽略。这样做的原因是为了在 repo 中保存 space,并且在尝试合并分支时不会出现合并冲突。

可在此处找到 github 上的标准 unity .gitignore 示例:https://github.com/github/gitignore/blob/master/Unity.gitignore