Perforce SCM
To best support non-technical members of the Xist.GG team, I require the binary locking/sharing capabilities of Perforce.
How To: Set up a UE5 Perforce Server
Before you create any depots on your P4 server, set up the typemap
and .p4ignore
.
Once you have these, create any depots you need. For example you could create depots like:
How To: Set up a Lyra Project Source Depot
- Create
//Lyra
Depot - Create
//Lyra/Main
Stream (import from Epic#NoChanges
) - Create
//Lyra/Xist
Stream (applyLYRAGAME_API
updates,virtual
overrides, etc)
How To: Create a new //Lyra/Xist
-based Game Project
- Create a new
//Lyra/XistGame
Stream based on//Lyra/Xist
- Repeat as needed with each new stream/project name
How To: Merge Epic Updates into a Lyra P4 Depot
See this detailed PowerShell procedure for the exact commands necessary to merge new updates from Epic into an existing Lyra Project P4 depot.
How To: Set up a Custom UE5 Engine Source Depot
- Create Depot
//UE5
- Create Mainline Stream
//UE5/Release
- Import Epic Custom Engine Source from either GitHub or UDN P4
- Create Task Stream
//UE5/Xist
with parent//UE5/Release
- Apply Xist hacks/edits to this custom 5.1 engine
For more details see: How to: Create a Custom UE5 Engine Source Depot & Streams
Setting up a Perforce Server as a Docker container
- XistGG Perforce Docker Setup
- Inspired by: Setting Up Perforce with Docker for Unreal Engine 4 (conceptually identical to UE5)
Recommended Reading
- How to use Perforce Streams 101
- Perforce Tutorial
- Basic Initial Setup Tasks
- P4 Typemap: How to Set Up Perforce Typemap
- IMPORTANT: get the typemap correct before you add your project to Perforce