我正在使用适用于Windows的GitHub,它会生成一个不错的gitignore,它忽略了大多数无关的文件,例如日志文件或特定于VS的不需要共享的文件。
从我从Unreal docs的此页面收集的信息来看,您可能会忽略以下目录:
DerivedDataCache
Intermediate
Saved
我不会忽略Binaries,仅仅是因为我正在与没有VS的关卡设计师合作,因此需要我构建的DLL文件(我想,我可能是错的)。
再次提醒您,我正在使用Windows的Git,当您创建项目时,它会为您生成gitignore,而且它很大。我几乎只提交以下内容(其中“ ReallyCoolGame”是您的项目的名称):
.gitattributes
.gitignore
Binaries
Config
Content
Source
ReallyCoolGame.sln
ReallyCoolGame.uproject
我只是自己做这个,还没有和我的关卡设计师一起测试,因此请小心。
另外,我指的是使用第一人称C ++模板创建了一个项目,它被保存到:E:\Documents\Unreal Projects\ReallyCoolGame
(My Documents == E:\Documents
虚幻引擎源代码目录结构中我的机器上),而不是。
编辑:我也不想包括所有默认内容,所以我将在Content中有一个子目录,仅用于游戏资产本身,其名称与项目相同,而忽略Content的所有其他子目录。因此,.gitignore顶部的行现在看起来像:
DerivedDataCache
Intermediate
Saved
Content/*
!Content/ReallyCoolGame
关卡设计师将把我们所有的资产都放进去Content/ReallyCoolGame
。
更新:
中间目录实际上包含Visual Studio的项目文件,这是构建项目所必需的。如果忽略Intermediate目录,则将无法生成项目,因为Visual Studio解决方案找不到该项目。但是,有两个简单的解决方法。
1)只是不要忽略中间目录。当然,在这种情况下,Visual Studio仍会找到所需的所有项目文件,并能够构建项目。
2)这甚至更好,尤其是对于版本控制:在Unreal Engine 4编辑器中打开您的项目,然后转到“文件>刷新Visual Studio项目”。这将为您生成一个全新的解决方案文件,这意味着您甚至不需要提交该文件,并且可以将项目文件夹中的* .sln添加到.gitignore文件中。
* .suo和* .sdf文件通常也可以忽略,因为Visual Studio在打开解决方案时会生成新文件。