Skip to content

Instantly share code, notes, and snippets.

@d6e
Last active May 13, 2022 04:13
Show Gist options
  • Save d6e/d2d0ebe3f62b86cb708f844e4f9144c3 to your computer and use it in GitHub Desktop.
Save d6e/d2d0ebe3f62b86cb708f844e4f9144c3 to your computer and use it in GitHub Desktop.
Master unity gitattributes file for git LFS
# To migrate you can use the command:
# git lfs migrate import --everything --include="*.psd,*.ico,*.webp,*.png,*.jpg,*.jpeg,*.gif,*.ai,*.tif,*.tga,*.exr,*.hdr,*.otf,*.ttf,*.woff2,*.aif,*.mp3,*.wav,*.ogg,*.mp4,*.mov,*.mkv,*.avi,*.mpeg,*.mpg,*.flv,*.3dm,*.3ds,*.blend,*.c4d,*.collada,*.dae,*.dxf,*.fbx,*.jas,*.lws,*.lxo,*.ma,*.max,*.mb,*.obj,*.dll,*.dylib,*.so,*.7z,*.br,*.gz,*.tar,*.zip,*.rar,*.pdf,*.a,*.rns,*.exe,*.pdb,*.mdb,*.skel.bytes"
# git push --force --all
# git reflog expire --expire-unreachable=now --all
# git gc --prune=now
# For more information:
# https://github.com/git-lfs/git-lfs/wiki/Tutorial
# https://github.com/git-lfs/git-lfs/blob/main/docs/man/git-lfs-migrate.1.ronn
###############################
# Macros #
###############################
# Macro for Unity YAML-based asset files.
[attr]unityyaml eol=lf merge=unityyamlmerge diff
# Macro for all binary files that should use Git LFS.
[attr]lfs -text filter=lfs diff=lfs merge=lfs
###############################
# Unity #
###############################
# Code
*.cs text diff=csharp
*.cginc text
*.shader text
# Unity Text Assets
*.meta unityyaml
*.unity unityyaml
*.asset unityyaml
*.prefab unityyaml
*.mat unityyaml
*.anim unityyaml
*.controller unityyaml
*.overrideController unityyaml
*.physicMaterial unityyaml
*.physicsMaterial unityyaml
*.physicsMaterial2D unityyaml
*.playable unityyaml
*.mask unityyaml
*.brush unityyaml
*.flare unityyaml
*.fontsettings unityyaml
*.guiskin unityyaml
*.giparams unityyaml
*.renderTexture unityyaml
*.spriteatlas unityyaml
*.terrainlayer unityyaml
*.mixer unityyaml
*.shadervariants unityyaml
# Unity Binary Assets
*.cubemap lfs
*.unitypackage lfs
# Note: Unity terrain assets must have "-Terrain" suffix.
*-[Tt]errain.asset -unityyaml lfs
# Note: Unity navmesh assets must have "-NavMesh" suffix.
*-[Nn]av[Mm]esh.asset -unityyaml lfs
###############################
# Git Line Endings #
###############################
# Set default behaviour to automatically normalize line endings.
* text=auto
# Force batch scripts to always use CRLF line endings so that if a repo is accessed
# in Windows via a file share from Linux, the scripts will work.
*.{cmd,[cC][mM][dD]} text eol=crlf
*.{bat,[bB][aA][tT]} text eol=crlf
# Force bash scripts to always use LF line endings so that if a repo is accessed
# in Unix via a file share from Windows, the scripts will work.
*.sh text eol=lf
# Force vcproj to have the correct line endings so it will work
*.vcproj text eol=crlf
###############################
# Git Large File System (LFS) #
###############################
# Images
*.psd lfs
*.ico lfs
*.webp lfs
*.png lfs
*.jpg lfs
*.jpeg lfs
*.gif lfs
*.ai lfs
*.tif lfs
*.tga lfs
*.exr lfs
*.hdr lfs
# Fonts
*.otf lfs
*.ttf lfs
*.woff2 lfs
# Audio
*.aif lfs
*.mp3 lfs
*.wav lfs
*.ogg lfs
# Video
*.mp4 lfs
*.mov lfs
*.mkv lfs
*.avi lfs
*.mpeg lfs
*.mpg lfs
*.flv lfs
# 3D Objects
*.3dm lfs
*.3ds lfs
*.blend lfs
*.c4d lfs
*.collada lfs
*.dae lfs
*.dxf lfs
*.fbx lfs
*.jas lfs
*.lws lfs
*.lxo lfs
*.ma lfs
*.max lfs
*.mb lfs
*.obj lfs
# Libraries
*.dll lfs
*.dylib lfs
*.so lfs
# Archives
*.7z lfs
*.br lfs
*.gz lfs
*.tar lfs
*.zip lfs
*.rar lfs
# Documents
*.pdf lfs
# Other
*.a lfs
*.rns lfs
*.exe lfs
*.pdb lfs
*.mdb lfs
# Spine export file for Unity
*.skel.bytes lfs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment