oh ffsakes. i’ve been frustrated for about an hour trying to make this work. and i read your answer and I think… surely i’m not this dumb… but hey. i’m this dumb.
Anyone open to explaining why each of these folders (and files look to be included too?) should NOT be on the depot?
I came here to find out how to have perforce ignore Saved, Intermediate, and Binaries, since those are always generated locally. Which ironically are not in this list.
I wouldn’t call the example of the ignore file complete or valid.
Now I don’t work with perforce, so I can’t share a perforce syntax with you.
You can get the idea of what to ignore from my well tested GitIgnore file, it’s how I set it up.
My approach is not a blacklist, but a whitelist. Whitelists prevent “accidental” inclusions of nonsense files (blend1, lock, BAK etc.). It’s best not to swap back to blacklist halfway.
Some are optional (documentation, openoffice lock files, “SourceContent” (source files for 3D models etc.), and so on. Ask yourself what you really want to include (I included concept art on an abandoned repo, but that’s not what it’s (usually) for). Others are preference (do you really want to delete all the saved config etc.)
# First, ignore everything
*
# Now, whitelist anything that's a directory
!*/
# base files
!**/*.uproject
!Plugins/**/*.uplugin
!**/.gitignore
# _Documentation, whitelist everything
!**/_Documentation/**
# Ignore OpenOffice temp files
**/_Documentation/**/.~lock.*
# Config
!Config/**
!Plugins/*/Config/**
# Content
!Content/**
!Plugins/*/Content/**
# Content Built data for maps
**/*_BuiltData.uasset
# Resources
!Plugins/*/Resources/**
# Source
!Source/**
!Plugins/*/Source/**
# Script
!Script/**
!Plugins/*/Script/**
# Configuration files generated by the Editor
!Saved/Config/Windows/*.ini
## Config consists mostly of shared files except per-user editor settings
# Saved/Config/**/DefaultEditorPerProjectUserSettings.ini
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
!Build/*/PakBlacklist*.txt
# Don't ignore icon files in Build
!Build/**/*.ico
# Cache files for the editor to use
# Art / concepts
# SourceContent, whitelist source files other than code.
!SourceContent/**
!Plugins/*/SourceContent/**
# blacklist temporary or junk files.
**/*.blend1
# Concepts (Stories / Art), whitelist everything.
!SourceContent/_Concepts/**
!Plugins/*/SourceContent/_Concepts/**
# Whitelist documentation shortcuts per plugin.
!Plugins/*/Documentation.url
I actually tried to set up a perforce setup on a home “server” time ago (ubuntu, perforce, the whole “lab”), because if I remember correctly they support binary files and are promoted by EPIC, but I had too much trouble with it. For example, there was just no way to convert it back to GIT back then. It was… just trouble as I remember it. Now with GIT I just have to avoid committing binary files whenever I can (blueprints, textures, models, blender saves and such) as GIT is really meant for committing and diffing text files. However, it’s free and easy to work with too. When Perforce hits the fan there’s always Git.