一个repo中的不同unity项目,希望gitignore忽略所有大容量卷文件夹

一个repo中的不同unity项目,希望gitignore忽略所有大容量卷文件夹,git,unity3d,github,gitignore,Git,Unity3d,Github,Gitignore,我有一个文件夹,存放所有不同的游戏,每个游戏都有自己的“资产”、“库”、“日志”等文件夹 以前,当我只想将一个项目上传到GitHub时,我选择了.gitignoreUnity,它会自动忽略那些不需要上传的巨大文件 现在,我在一个文件夹中有多个项目,我想将它们全部上传到一个存储库中,而且我希望我的.gitignore能够像在一个Unity游戏中那样忽略每个目录中所有不必要的文件 我的。gitigonore现在是: [Ll]ibrary/ [Tt]emp/ [Oo]bj/ [Bb]uild/

我有一个文件夹,存放所有不同的游戏,每个游戏都有自己的
“资产”、“库”、“日志”
等文件夹

以前,当我只想将一个项目上传到GitHub时,我选择了
.gitignore
Unity,它会自动忽略那些不需要上传的巨大文件

现在,我在一个文件夹中有多个项目,我想将它们全部上传到一个存储库中,而且我希望我的
.gitignore
能够像在一个Unity游戏中那样忽略每个目录中所有不必要的文件

我的。
gitigonore
现在是:

[Ll]ibrary/
[Tt]emp/ 
[Oo]bj/ 
[Bb]uild/ 
[Bb]uilds/ 
Assets/AssetStoreTools*

# Visual Studio cache directory .vs/

# Autogenerated VS/MD/Consulo solution and project files ExportedObj/ .consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta

# Unity3D Generated File On Crash Reports sysinfo.txt

# Builds
*.apk
*.unitypackage
为了实现我想要发生的事情,我应该改变什么

顺便说一句,我是git新手,我很确定我的问题有一个非常简单的答案

但是我在网上找不到它

选项A-子模块 您可以查看并拥有一个存储库,如

  • 主存储库
    • 应用1-子模块
    • 应用程序2-子模块
每个子模块都会带来它自己的
.gitignore
,它适用于相应的根文件夹

如果您有一个主应用程序,然后在该主应用程序中使用多个实际的功能模块,那么这是最有意义的

选项B-
**
路径通配符 只需调整
.gitignore
即可忽略任何同名文件夹,如

**/[Ll]ibrary/
**/[Tt]emp/ 
**/[Oo]bj/ 
**/[Bb]uild/ 
**/[Bb]uilds/ 
**/Assets/AssetStoreTools*

与完整路径名匹配的模式中的两个连续星号(
“**”
)可能具有特殊含义:

  • 前导的
    “**”
    后跟斜杠表示在所有目录中都匹配。例如,
    “***/foo”
    匹配文件或目录
    “foo”
    ,与模式
    “foo”
    相同
    “***/foo/bar”
    匹配目录下的任何文件或目录
    “bar”
如果您正在进行一个更大的项目,而该项目实际上只包含完全独立的不同Unity项目,则这一点最有意义

不过要小心:如果您现在有一个类似于
Assets/Models/Obj/…
的文件夹,该文件夹将被忽略;)

为了避免这种情况,您可以再次忽略文件夹(如果它们位于
资产
文件夹中),如

!**/Assets/**/[Ll]ibrary/
!**/Assets/**/[Tt]emp/ 
!**/Assets/**/[Oo]bj/ 
!**/Assets/**/[Bb]uild/ 
!**/Assets/**/[Bb]uilds/