sublimehq / sublime_merge

Issue tracker for Sublime Merge
https://www.sublimemerge.com
276 stars 14 forks source link

LFS Label missing from files tracked in LFS with uppercase file extension #1931

Open thomashope opened 5 months ago

thomashope commented 5 months ago

Version info

Description

Sublime Merge shows an LFS label for some files, but not others. The command line suggest that all these files are indeed stored in LFS

Only obvious difference is some have upper case file extensions while others have lower case.

See screenshots and command line output.

The repo is on an NTFS hard drive. I only have 1 drive in this machine.

Steps to reproduce

Sorry, no obvious steps here.

  1. Track files in LFS with both upper case and lower case file extensions.
  2. Modify the tracked files
  3. ??

Expected behavior

All files tracked in LFS should have the LFS label.

Debug Information

=== App Version Information ===
Build: 2096

=== Git Version Information ===
Using Git: C:\Program Files\Sublime Merge\Git\cmd\git.exe (bundled)
git version 2.39.1.windows.1
PATH: C:\Users\Thomas Hope\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\local\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Users\Thomas Hope\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\Git\cmd;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files\Sublime Merge;C:\Program Files\Sublime Text;C:\Program Files\dotnet;C:\Users\Thomas Hope\AppData\Local\Microsoft\WindowsApps;C:\Users\Thomas Hope\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Thomas Hope\.dotnet\tools;C:\Users\Thomas Hope\AppData\Local\GitHubDesktop\bin;C:\Program Files\Git\usr\bin\vendor_perl;C:\Program Files\Git\usr\bin\core_perl;C:\Users\Thomas Hope\.fzf\bin

=== Browse Page Information ===
HEAD: 93b7d1d680439d8ba97e5c7d9db0cba156d58ef4
Is in merge: 0
Is in cherry_pick: 0
Is in rebase: 0
Is in revert: 0

=== Git Status Information ===
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx

=== Our Status Information ===
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx
 M 3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx

=== Git Config Information ===
alias.sync=!f() { git fetch; [[ $(git branch --show-current) == $1 ]] && git pull --ff-only || git fetch origin $1:$1; }; f
alias.unstage=restore --staged
branch.dev.merge=refs/heads/dev
branch.dev.remote=origin
REDACTED
REDACTED=origin
color.interactive=true
color.ui=auto
core.autocrlf=false
core.bare=false
core.eol=lf
core.filemode=false
core.fscache=true
core.ignorecase=true
core.logallrefupdates=true
core.repositoryformatversion=0
core.symlinks=false
credential REDACTED
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.smudge=git-lfs smudge -- %f
gui.recentrepo=C:/repos/REDACTED
help.format=html
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/etc/ssl/certs/ca-bundle.crt
include.path=C:/Program Files/Git/etc/gitconfig
init.defaultbranch=master
lfs.https://github.com/REDACTED.git/info/lfs.access=basic
lfs.repositoryformatversion=0
maintenance.repo=C:/repos/REDACTED
pack.packsizelimit=2g
pull.rebase=false
push.autosetupremote=true
rebase.autosquash=true
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=REDACTED
submodule.active=.
user.email=REDACTED
user.name=Tom Hope

=== Our Config Information ===
Git Config Path Information
Using config path: /C/ProgramData/Git/config
Using config path: /C/Program Files/Sublime Merge/Git/etc/gitconfig
Using config path: /C/Users/Thomas Hope/.config/git/config
Using config path: /C/Users/Thomas Hope/.gitconfig
Using config path: /C/repos/REDACTED/.git/config

Our config output is identical to the Git config output

=== Git Attributes Information ===
git check_attr --all output
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: filter: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: filter: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: filter: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: filter: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: filter: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: diff: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: merge: lfs
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: text: unset
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: filter: lfs

=== Our Modified Files Newline Normalisation and EOL Information ===
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: disabled - native
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: disabled - native
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: disabled - native
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: disabled - native
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: disabled - native
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: disabled - native

=== Our Modified Files Flag Information ===
Ignoring symlinks: 1
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX: Working - Normal File : Index - Normal File
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX: Working - Normal File : Index - Normal File
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX: Working - Normal File : Index - Normal File
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX: Working - Normal File : Index - Normal File
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx: Working - Normal File : Index - Normal File
3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx: Working - Normal File : Index - Normal File

Relevant lines from .gitattributes

*.FBX      filter=lfs diff=lfs merge=lfs -text
*.fbx      filter=lfs diff=lfs merge=lfs -text

Git Bash for Windows Output

$ git-lfs --version
git-lfs/3.4.1 (GitHub; windows amd64; go 1.20.11; git 0898dcbc)

$ git --version
git version 2.44.0.windows.1

$ git lfs status
On branch dev
Objects to be pushed to origin/dev:

Objects to be committed:

Objects not staged for commit:

        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_2x2x1_A.FBX (LFS: 1c01fe3 -> File: c64a87b)
        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Ramp_Half_1x2x1_A.FBX (LFS: 07cbc24 -> File: 070a11e)
        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_A.FBX (LFS: fb9a063 -> File: 11efd3c)
        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_B.FBX (LFS: 6562c97 -> File: 386a3d0)
        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_G.fbx (LFS: 1ced59f -> File: c3a73d5)
        3D/Regions/General/Terrain/TerrainModules/HeightModules/SM_Terrain_Height_Straight_1x1x1_H.fbx (LFS: 3cecd16 -> File: 3e6c69e)

Screenshots

Screenshot 2024-06-19 120205

AntonPetrov83 commented 4 months ago

For me some files are missing the LFS label in the latest commit while git lfs ls-files reports these files.

image