# ============================================================ # Line endings # ============================================================ * text=auto # Force CRLF for Windows-only *.bat text eol=crlf *.cmd text eol=crlf *.ps1 text eol=crlf *.sln text eol=crlf # Force LF for cross-platform scripts *.sh text eol=lf # Explicit text (auto catches them, but keeps diffs clean) *.cpp text *.c text *.h text *.hpp text *.cs text *.ini text *.uproject text *.uplugin text *.json text *.xml text *.md text *.yaml text *.yml text *.svg text *.gltf text # ============================================================ # Git LFS - UE runtime binary assets (globalno) # Extension je ovde jednoznacan: samo UE engine proizvodi ove fajlove. # ============================================================ *.uasset filter=lfs diff=lfs merge=lfs -text *.umap filter=lfs diff=lfs merge=lfs -text *.uexp filter=lfs diff=lfs merge=lfs -text *.ubulk filter=lfs diff=lfs merge=lfs -text *.uptnl filter=lfs diff=lfs merge=lfs -text *.ucas filter=lfs diff=lfs merge=lfs -text *.utoc filter=lfs diff=lfs merge=lfs -text *.pak filter=lfs diff=lfs merge=lfs -text *.locres filter=lfs diff=lfs merge=lfs -text # ============================================================ # Fonts - globalno (uvek binarno, nema ambiguity sa docs slikama) # ============================================================ *.ttf filter=lfs diff=lfs merge=lfs -text *.otf filter=lfs diff=lfs merge=lfs -text # ============================================================ # Media / DCC - folder-scoped # SourceArt/** i RawContent/** su jasno "source asset" lokacije. # Globalno pravilo po ekstenziji bi hvatalo i docs/screenshot.png, # README_banner.jpg itd. - ovde to ne zelimo. # # Ako tvoj workflow drzi raw source fajlove pored .uasset fajlova # u Content/, raskomentarisi Content/** blok na dnu. # ============================================================ # ----- Images / Textures ----- SourceArt/**/*.png filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.jpg filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.jpeg filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.gif filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.bmp filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.tga filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.tif filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.tiff filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.exr filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.hdr filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.psd filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.psb filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.ai filter=lfs diff=lfs merge=lfs -text RawContent/**/*.png filter=lfs diff=lfs merge=lfs -text RawContent/**/*.jpg filter=lfs diff=lfs merge=lfs -text RawContent/**/*.jpeg filter=lfs diff=lfs merge=lfs -text RawContent/**/*.gif filter=lfs diff=lfs merge=lfs -text RawContent/**/*.bmp filter=lfs diff=lfs merge=lfs -text RawContent/**/*.tga filter=lfs diff=lfs merge=lfs -text RawContent/**/*.tif filter=lfs diff=lfs merge=lfs -text RawContent/**/*.tiff filter=lfs diff=lfs merge=lfs -text RawContent/**/*.exr filter=lfs diff=lfs merge=lfs -text RawContent/**/*.hdr filter=lfs diff=lfs merge=lfs -text RawContent/**/*.psd filter=lfs diff=lfs merge=lfs -text RawContent/**/*.psb filter=lfs diff=lfs merge=lfs -text RawContent/**/*.ai filter=lfs diff=lfs merge=lfs -text # ----- 3D / Meshes ----- SourceArt/**/*.fbx filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.obj filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.3ds filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.max filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.blend filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.dae filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.abc filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.usd filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.usda filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.usdc filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.usdz filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.stl filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.ply filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.glb filter=lfs diff=lfs merge=lfs -text RawContent/**/*.fbx filter=lfs diff=lfs merge=lfs -text RawContent/**/*.obj filter=lfs diff=lfs merge=lfs -text RawContent/**/*.3ds filter=lfs diff=lfs merge=lfs -text RawContent/**/*.max filter=lfs diff=lfs merge=lfs -text RawContent/**/*.blend filter=lfs diff=lfs merge=lfs -text RawContent/**/*.dae filter=lfs diff=lfs merge=lfs -text RawContent/**/*.abc filter=lfs diff=lfs merge=lfs -text RawContent/**/*.usd filter=lfs diff=lfs merge=lfs -text RawContent/**/*.usda filter=lfs diff=lfs merge=lfs -text RawContent/**/*.usdc filter=lfs diff=lfs merge=lfs -text RawContent/**/*.usdz filter=lfs diff=lfs merge=lfs -text RawContent/**/*.stl filter=lfs diff=lfs merge=lfs -text RawContent/**/*.ply filter=lfs diff=lfs merge=lfs -text RawContent/**/*.glb filter=lfs diff=lfs merge=lfs -text # ----- Audio ----- SourceArt/**/*.wav filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.mp3 filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.ogg filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.flac filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.aif filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.aiff filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.m4a filter=lfs diff=lfs merge=lfs -text RawContent/**/*.wav filter=lfs diff=lfs merge=lfs -text RawContent/**/*.mp3 filter=lfs diff=lfs merge=lfs -text RawContent/**/*.ogg filter=lfs diff=lfs merge=lfs -text RawContent/**/*.flac filter=lfs diff=lfs merge=lfs -text RawContent/**/*.aif filter=lfs diff=lfs merge=lfs -text RawContent/**/*.aiff filter=lfs diff=lfs merge=lfs -text RawContent/**/*.m4a filter=lfs diff=lfs merge=lfs -text # ----- Video ----- SourceArt/**/*.mp4 filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.mov filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.avi filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.mkv filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.webm filter=lfs diff=lfs merge=lfs -text SourceArt/**/*.wmv filter=lfs diff=lfs merge=lfs -text RawContent/**/*.mp4 filter=lfs diff=lfs merge=lfs -text RawContent/**/*.mov filter=lfs diff=lfs merge=lfs -text RawContent/**/*.avi filter=lfs diff=lfs merge=lfs -text RawContent/**/*.mkv filter=lfs diff=lfs merge=lfs -text RawContent/**/*.webm filter=lfs diff=lfs merge=lfs -text RawContent/**/*.wmv filter=lfs diff=lfs merge=lfs -text # ============================================================ # Icons - zadrzano globalno (uvek mali binarni fajlovi) # ============================================================ *.ico filter=lfs diff=lfs merge=lfs -text *.icns filter=lfs diff=lfs merge=lfs -text # ============================================================ # NAPOMENE - sta NIJE u LFS-u i zasto # ============================================================ # - *.pdf, *.zip, *.rar, *.7z, *.woff, *.woff2 # => nisu UE-specificni; ako ti zatrebaju, dodaj folder-scope pravilo # tamo gde zaista zive, ne globalno. # - *.svg, *.gltf # => to su tekst formati (XML / JSON), ostaju kao text u Git-u. # Za binarni 3D format koristi *.glb (vec je u LFS-u gore). # - "lockable" atribut nije postavljen jer je to workflow policy, # ne univerzalni default. Ako tvoj tim koristi LFS locking, dodaj npr.: # *.uasset filter=lfs diff=lfs merge=lfs -text lockable # *.umap filter=lfs diff=lfs merge=lfs -text lockable # ============================================================ # Opt-in: Content/** source workflow # Raskomentarisi ako tvoj projekat drzi raw PNG/WAV/FBX/PSD pored # importovanih .uasset fajlova u Content/. Ovo je svestan izbor # workflow-a (neki timovi to rade, neki ne). # ============================================================ # Content/**/*.png filter=lfs diff=lfs merge=lfs -text # Content/**/*.jpg filter=lfs diff=lfs merge=lfs -text # Content/**/*.jpeg filter=lfs diff=lfs merge=lfs -text # Content/**/*.tga filter=lfs diff=lfs merge=lfs -text # Content/**/*.tif filter=lfs diff=lfs merge=lfs -text # Content/**/*.tiff filter=lfs diff=lfs merge=lfs -text # Content/**/*.exr filter=lfs diff=lfs merge=lfs -text # Content/**/*.hdr filter=lfs diff=lfs merge=lfs -text # Content/**/*.psd filter=lfs diff=lfs merge=lfs -text # Content/**/*.psb filter=lfs diff=lfs merge=lfs -text # Content/**/*.wav filter=lfs diff=lfs merge=lfs -text # Content/**/*.mp3 filter=lfs diff=lfs merge=lfs -text # Content/**/*.ogg filter=lfs diff=lfs merge=lfs -text # Content/**/*.flac filter=lfs diff=lfs merge=lfs -text # Content/**/*.fbx filter=lfs diff=lfs merge=lfs -text # Content/**/*.obj filter=lfs diff=lfs merge=lfs -text # Content/**/*.blend filter=lfs diff=lfs merge=lfs -text # Content/**/*.abc filter=lfs diff=lfs merge=lfs -text # Content/**/*.usd filter=lfs diff=lfs merge=lfs -text # Content/**/*.glb filter=lfs diff=lfs merge=lfs -text # Content/**/*.mp4 filter=lfs diff=lfs merge=lfs -text # Content/**/*.mov filter=lfs diff=lfs merge=lfs -text