From 5bac4407dd5b5054e8aad8fe12fe3256773b737f Mon Sep 17 00:00:00 2001 From: BlueRose <378100977@qq.com> Date: Tue, 7 May 2024 10:57:46 +0800 Subject: [PATCH] vault backup: 2024-05-07 10:57:46 --- .../VPS服务部署/Perforce Helix Core搭建.md | 292 +++++++++++++++++- 1 file changed, 290 insertions(+), 2 deletions(-) diff --git a/03-UnrealEngine/流程管理与部署/VPS服务部署/Perforce Helix Core搭建.md b/03-UnrealEngine/流程管理与部署/VPS服务部署/Perforce Helix Core搭建.md index 03c9517..09bd2d3 100644 --- a/03-UnrealEngine/流程管理与部署/VPS服务部署/Perforce Helix Core搭建.md +++ b/03-UnrealEngine/流程管理与部署/VPS服务部署/Perforce Helix Core搭建.md @@ -106,7 +106,9 @@ docker push ghcr.io/blueroses/perforce-helix-p4d:2024.5 - [打通UE4美术资源版本控制关节](https://zhuanlan.zhihu.com/p/261692804) - [UE5+Perforce+阿里云ECS版本控制搭建流程与工作流程](https://zhuanlan.zhihu.com/p/640743305) -PS. 编码使用:UTF8-no bom +PS: +1. 编码使用:UTF8-no bom +2. Connection–>Edit Current Workspace–>Advanced,设置为`Line ending characters for text file:UNIX style linefeed` ## 注册源码引擎到EpicGames 经过上面的步骤,源码引擎已经构建成功,但是在对项目就行选择引擎版本的时候,发现并没有这个版本 。这是因为,构建的引擎没有注册到EpicGames中,找到EpicGames安装目录下的注册器。复制到源码工程并且运行即可。 @@ -119,6 +121,24 @@ Launcher\Engine\Binaries\Win64\UnrealVersionSelector.exe - https://www.perforce.com/manuals/p4v/Content/P4V/Home-p4v.html - https://www.perforce.com/manuals/p4sag/Content/P4SAG/Home-p4sag.html +## 开发目录设计 +- [UE4管理多重项目-WiseeEngineering(翻译)](https://zhuanlan.zhihu.com/p/364346565) + +- ArtSource(美术资源:引擎中相应的美术资产应该统一从ArtSource仓库导入,这样美术人员可以集中在标准资产管线下的资产迭代,可以更加集中注意力于美术资产质量,所以前提是项目初期必须构建标准稳定的渲染和审核验收流程(这一点也是国内很多项目及经常返工,开发成本极高的原因)) +- Engine(引擎路径,这里我用于个人使用则不需要太多的分流) +- Project(项目工程) + +Example: +- e:\\Perforce + - ArtSource + - ShowRoom + - UnrealEngine + +## depot +默认有depot与spec2个仓库文件。 +- Depot:默认创建的仓库。 +- Spec:p4admin管理员的配置文件。 + ## P4Admin - 用户 - 用户组 @@ -128,12 +148,280 @@ Launcher\Engine\Binaries\Win64\UnrealVersionSelector.exe ## Typemap typemap 的设置能够在 Perforce 中控制文件的只读和可写的形式。 然后要做这件事情,需要管理员先在命令行cmd下设置 P4 的环境变量。 +在指定仓库上右键,点击`Open Command Windows Here`,输入`p4 -P YourPassword typemap`即可在弹出的txt文件中修改保存关闭即可。(输入UE官方推荐的内容即可) + +```text +# The form data below was edited by Jeff +# Perforce File Type Mapping Specifications. +# +# TypeMap: a list of filetype mappings; one per line. +# Each line has two elements: +# +# Filetype: The filetype to use on 'p4 add'. +# +# Path: File pattern which will use this filetype. +# +# See 'p4 help typemap' for more information. + +TypeMap: + text //....asp + text //....cnf + text //....css + text //....htm + text //....html + text //....inc + text //....js + text+w //....log + text+w //....ini + text+w //....pdm + binary+Fl //....zip + binary+Fl //....bz2 + binary+Fl //....rar + binary+Fl //....gz + binary+Fl //....avi + binary+Fl //....jpg + binary+Fl //....jpeg + binary+Fl //....mpg + binary+Fl //....gif + binary+Fl //....tif + binary+Fl //....mov + binary+Fl //....jar + binary+l //....ico + binary+l //....exp + binary+l //....btr + binary+l //....bmp + binary+l //....doc + binary+l //....dot + binary+l //....xls + binary+l //....ppt + binary+l //....pdf + binary+l //....tar + binary+l //....exe + binary+l //....dll + binary+l //....lib + binary+l //....bin + binary+l //....class + binary+l //....war + binary+l //....ear + binary+l //....so + binary+l //....rpt + binary+l //....cfm + binary+l //....ma + binary+l //....mb + binary+l //....pac + binary+l //....m4a + binary+l //....mp4 + binary+l //....aac + binary+l //....wma + binary+l //....docx + binary+l //....pptx + binary+l //....xlsx + binary+l //....png + binary+l //....raw + binary+l //....odt + binary+l //....ods + binary+l //....odg + binary+l //....odp + binary+l //....otg + binary+l //....ots + binary+l //....ott + binary+l //....psd + binary+l //....sxw + binary+S2w //....exe + binary+S2w //....dll + binary+S2w //....lib + binary+S2w //....app + binary+S2w //....dylib + binary+S2w //....stub + binary+S2w //....ipa + binary //....bmp + text //....ini + text //....config + text //....cpp + text //....h + text //....c + text //....cs + text //....m + text //....mm + text //....py + binary+l //....uasset + binary+l //....umap + binary+l //....upk + binary+l //....udk + binary+w //....exe + binary+w //....dll + binary+w //....lib + binary+w //....app + binary+w //....dylib + binary+w //....stub + binary+w //....ipa + binary //....bmp + text //....ini + text+w //....config + text //....cpp + text //....h + text //....c + text //....cs + text //....m + text //....mm + text //....py + binary+l //....uasset + binary+l //....umap + binary+l //....upk + binary+l //....udk + binary+l //....ubulk + text //....ignore +``` + ## 相关概念 ### Workspace Workspace可以理解为,depot到本地的一个映射,对应本地的一个目录。 新建Workspace,在p4admin中depot查看在服务器中存放的所有Ddepot仓库 -开发的过程中可以有多个Workspace(例如一个用来开发,一个用来更新验证保证提交没有错误),但一般只推荐有一个Workspace +开发的过程中可以有多个Workspace(例如一个用来开发,一个用来更新验证保证提交没有错误),但一般只推荐有一个Workspace。 + +### P4ExcludeList + +### .p4ignore +命令行 +```bash +p4 set P4IGNORE=.p4ignore +p4 ignores +``` + +```text +# Ignore project files in the root +*.sln +!*\*.sln +.vs +*.suo +*.opensdf +*.sdf +*.pdb +*-Debug.dll +*.xcodeproj +.\Makefile +.\CMakeLists.txt +.\.ue4dependencies + +ipch\* + +# Packaged engine builds +LocalBuilds\* + +# DDC should never be checked in +Engine\DerivedDataCache\* +Templates\**\DerivedDataCache\* + +# Engine intermediates & binaries +Engine\Intermediate\* +Engine\Plugins\**\Intermediate\* +Engine\Programs\**\Intermediate\* +Engine\Binaries* +Engine\Plugins\**\Binaries\* + +# Feature Packs (they might get updated with langauge packs?) +FeaturePacks\* + +# Samples & Templates +Templates\**\Intermediate\* +Templates\**\Saved\* +Samples\**\Intermediate\* + +# C# Intermediate folders +Engine\Source\Programs\**\obj\* +Engine\Platforms\**\Programs\**\obj\* + +# Saved folders for programs should not be checked in +Engine\Programs\**\Saved\* +Engine\Programs\UnrealBuildTool\* + +# Ignore any saved local files +Engine\Saved\* + +# Ignore any build receipts +Engine\Build\Receipts\* + +# Ignore Unix backup files +*~ + +# Ignore Mac desktop services store files +.DS_Store + +# Ignore crash reports +crashinfo--* + +# Ignore linux project files +*.user +*.pro +*.pri +*.kdev4 + +# +# Setup.bat Ignores +# +# There already might be some files pushed into the repo that would otherwise be +# filtered: those are from the initial commit, coming directly from UE4-GitHub. +# After running Setup.bat, the folders below will be populated with ~46GB of +# files. Hence we'll be blanked ignoring some directories such as ThirdParty, +# Media, Content, etc. If we want to change anything in those blanked-ignored +# folders, we should unignore the specific thing we're adding. +# +.git\* +Samples\**\Content\* +Samples\**\Media\* +Templates\**\Content\* +Templates\**\Media\* +Templates\Media\* +Engine\Platforms\**\Content\* +Engine\Documentation\* +Engine\Extras\* +Engine\Content\* +Engine\Build\* +Engine\Source\ThirdParty\* +Engine\Source\Programs\* +Engine\Source\Developer\* +Engine\Plugins\* + +# Specific files +Engine\Config\ShaderCategories.csv +.tgitconfig +.ue4dependencies + +# After all this above, there's still a couple folders and files left that doesn't +# fit the filtering criteria above, so we handle them individually here. +Engine\Source\Runtime\Navmesh\RecastDemo* +Engine\Source\Runtime\Launch\Resources\Mac* +Engine\Source\Runtime\Launch\Resources\Linux* +Engine\Source\Runtime\Experimental\Voronoi\Private\voro++* + +Engine\Source\Runtime\Apple\MetalRHI\Public\ue4_stdlib.metal +Engine\Source\Runtime\AVEncoder\Private\Microsoft\Windows\ThirdParty\NvEncoder\LicenseAgreement.pdf +Engine\Source\Runtime\Experimental\Chaos\.clang-format +Engine\Source\Runtime\TraceLog\Private\Trace\LZ4\Epic.patch +Templates\TemplateResources\Standard\*.FBX + + +# +# PLUGINS +# +# Plugins that come with Setup.bat are ignored above altogether, so we un-ignore +# the custom plugins we want to ship with the customized UE4. +!Engine\Plugins\Marketplace* +!Engine\Plugins\Runtime\HoudiniEngine* +# ... but keep ignoring their Build & Intermediate +Engine\Plugins\Marketplace\**\Intermediate\* +Engine\Plugins\Marketplace\**\Binaries\* +Engine\Plugins\Runtime\**\Intermediate\* +Engine\Plugins\Runtime\**\Binaries\* + +# +# PackageEngine.bat Ignores +# +# Packaging the engine will generate some .ini files which are safe to ignore +# +Samples\**\Saved\* +``` # ASoul P4设计 仓库: