-
-
Save jase-perf/3f6328fb66427802090f458775e481df to your computer and use it in GitHub Desktop.
# 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 files. These lines are probably unnecessary as P4 will auto-detect the type. | |
text //....asmdef | |
text //....asmref | |
text //....cginc | |
text //....cm | |
text //....compute | |
text //....cs | |
text //....csv | |
text //....editorconfig | |
text //....gitignore | |
text //....hlsl | |
text //....js | |
text //....json | |
text //....md | |
text //....package | |
text //....proc | |
text //....proc | |
text //....rsp | |
text //....shader | |
text //....template | |
text //....txt | |
text //....uss | |
text //....xml | |
text //....yaml | |
# Text files that should be locked. (These are Unity3D files) | |
text+l //....md5anim | |
text+l //....md5mesh | |
text+l //....meta | |
# Text files that should remain writable (often automatically updated) | |
# Be EXTRA SURE to reconcile offline work to make sure they are submitted properly. | |
text+w //....config | |
text+w //....DotSettings | |
text+w //....ini | |
text+w //....log | |
text+w //....modules | |
text+w //....pdm | |
text+w //....target | |
text+w //....uatbuildrecord | |
text+w //....uproject | |
text+w //....version | |
# Binary files to lock and to store uncompressed (because they are likely already compressed) | |
binary+Fl //....avi | |
binary+Fl //....bz2 | |
binary+Fl //....gif | |
binary+Fl //....gz | |
binary+Fl //....jar | |
binary+Fl //....jpeg | |
binary+Fl //....jpg | |
binary+Fl //....mov | |
binary+Fl //....mpg | |
binary+Fl //....rar | |
binary+Fl //....tif | |
binary+Fl //....tiff | |
binary+Fl //....zip | |
# Most binary files should be locked to avoid merge conflicts. | |
# Feel free to add more file endings as needed. | |
# Also, if you want to take advantage of Delta Transfer in P4 | |
# you could add +F to all binaries to get faster sync/submit | |
# at the cost of using more storage space on the server. | |
binary+l //....a | |
binary+l //....aac | |
binary+l //....aar | |
binary+l //....aas | |
binary+l //....ae | |
binary+l //....ai | |
binary+l //....aiff | |
binary+l //....anim | |
binary+l //....apk | |
binary+l //....asset | |
binary+l //....bik | |
binary+l //....bin | |
binary+l //....blend | |
binary+l //....bmp | |
binary+l //....bnk | |
binary+l //....btr | |
binary+l //....celtx | |
binary+l //....cfm | |
binary+l //....class | |
binary+l //....clip | |
binary+l //....controller | |
binary+l //....cubemap | |
binary+l //....dae | |
binary+l //....data | |
binary+l //....dds | |
binary+l //....demo | |
binary+l //....doc | |
binary+l //....docx | |
binary+l //....dot | |
binary+l //....ear | |
binary+l //....fbx | |
binary+l //....flac | |
binary+l //....fnt | |
binary+l //....ibl | |
binary+l //....ico | |
binary+l //....ip | |
binary+l //....light | |
binary+l //....lighting | |
binary+l //....lwo | |
binary+l //....m4a | |
binary+l //....ma | |
binary+l //....mask | |
binary+l //....mat | |
binary+l //....mb | |
binary+l //....mp3 | |
binary+l //....mp4 | |
binary+l //....navmesh | |
binary+l //....obj | |
binary+l //....odg | |
binary+l //....odp | |
binary+l //....ods | |
binary+l //....odt | |
binary+l //....ogg | |
binary+l //....otf | |
binary+l //....otg | |
binary+l //....ots | |
binary+l //....ott | |
binary+l //....overrideController | |
binary+l //....pac | |
binary+l //....pdf | |
binary+l //....physicMaterial | |
binary+l //....png | |
binary+l //....ppt | |
binary+l //....pptx | |
binary+l //....prefab | |
binary+l //....prefab.unity | |
binary+l //....psb | |
binary+l //....psd | |
binary+l //....raw | |
binary+l //....renderTexture | |
binary+l //....res | |
binary+l //....response | |
binary+l //....roq | |
binary+l //....rpt | |
binary+l //....shadow | |
binary+l //....skp | |
binary+l //....so | |
binary+l //....sxw | |
binary+l //....tar | |
binary+l //....terrain | |
binary+l //....tga | |
binary+l //....tres | |
binary+l //....ttf | |
binary+l //....u | |
binary+l //....uasset | |
binary+l //....udk | |
binary+l //....umap | |
binary+l //....unity | |
binary+l //....unitypackage | |
binary+l //....upk | |
binary+l //....war | |
binary+l //....wav | |
binary+l //....webm | |
binary+l //....wma | |
binary+l //....wmv | |
binary+l //....xls | |
binary+l //....xlsx | |
# Binary files that should stay writable because they will be updated automatically, | |
# such as when building without requiring checkout first. | |
# Be EXTRA SURE to reconcile offline work to make sure they are submitted properly. | |
binary+w //....app | |
binary+w //....dll | |
binary+w //....dylib | |
binary+w //....exe | |
binary+w //....exp | |
binary+w //....ipa | |
binary+w //....lib | |
binary+w //....pdb | |
binary+w //....rc | |
binary+w //....stub | |
binary+w //....ubulk | |
binary+w //....uexp | |
# The Sn flag means the server will only keep the latest n versions of the file. | |
# This is useful for large files that we want to store but can be regenerated if needed. | |
binary+wS2 //..._BuildData.uasset |
@michaelwbell
I just checked my gist for p4ignore here https://gist.github.com/jase-perf/b15b57d72fa8095c732fdbc4ca948903
which is based on Epic's recommendations and there is this line:
**/Engine/Binaries/**/*.exp
So it does seem like at least those ones should be ignored. I wonder if all of them should, though.
Thanks. I've also added .flac in my version.
Since information is limited, I am sharing my typemap with a more specific focus on Unity Engine that could complement this list:
Thanks for that @CitizenZultron ! I finally took the time to incorporate your changes and update the typemap. I made a few changes like removing +S from a couple file types, since I try to avoid recommending that without caveats since it could result in someone losing a version they needed and that can't be regenerated from the other files. Let me know if you think that was incorrect, though!
Hello. This is a helpful typemap. I believe there's one error:
.exp files are set to be binary. I believe they need to be writeable in the workspace. At least in my case, trying to compile Unreal Engine 5.
I have a related question. Should the .exp and .lib files just be ignored in P4Ignore?
Cheers.