Diagnosing Git LFS Pointer Files in Sourcetree: A Step-by-Step Guide
A diagnostic guide for when Sourcetree shows Git LFS pointer text instead of binary files. Covers ordered checks, fixes tied to each finding, and escalation criteria.
21 Apr 2026, 01:16 UTC

Recognizable Condition
You open a repository in Sourcetree and see files that should be binary—PSDs, videos, large datasets—displayed as tiny text pointers instead of their actual content. The diff viewer shows lines like version https://git-lfs.github.com/spec/v1 oid sha256:abc123... size 12345678. This means Git LFS is tracking the files, but the real objects haven't been fetched to your working copy.
Quick Cause Reference
| Symptom | Likely Cause |
|---|---|
| Pointer text in working copy | Git LFS not installed or not in PATH |
| Pointer text after clone | Missing git lfs install or git lfs pull |
| Pointer text, LFS installed | Repository lacks .gitattributes filter lines |
| Authentication errors on pull | Wrong LFS endpoint URL or network block |
Ordered Diagnostic Checks
Run these in sequence from a terminal opened at the repository root. Administrator rights are not required unless you need to install Git LFS system-wide.
1. Confirm Git LFS Installation
git lfs versionExpected: a version line such as git-lfs/3.5.0 (GitHub; linux amd64; go 1.21). If the command is not found, Git LFS is missing from your PATH.
2. Verify Sourcetree LFS Endpoint
In Sourcetree: Repository → Repository Settings → Git LFS. The endpoint should match your remote's LFS URL, typically https://<host>/<owner>/<repo>.git/info/lfs. A mismatch here prevents git lfs pull from reaching the object store.
3. Inspect .gitattributes
cat .gitattributesLook for lines like *.psd filter=lfs diff=lfs merge=lfs -text. Without these, Git treats the files as regular text and never invokes the LFS filter.
4. List Tracked LFS Objects
git lfs ls-filesOutput should show each tracked file with its OID and size. An empty list means nothing is configured for LFS tracking.
5. Test Endpoint Connectivity
curl -I "https://your-host/owner/repo.git/info/lfs"A 200 OK or 401 Unauthorized means the endpoint is reachable. Timeouts or connection refused indicate a firewall/proxy block.
Fixes Mapped to Findings
Git LFS Not Installed
- Download the installer for your OS from git-lfs.github.com.
- Run the installer (Windows/macOS) or use your package manager (
brew install git-lfs,apt install git-lfs,dnf install git-lfs). - Run
git lfs installonce per user account to register the global filters.
Missing .gitattributes Patterns
- Add patterns for your binary types:
echo "*.psd filter=lfs diff=lfs merge=lfs -text" >> .gitattributes - Commit the change:
git add .gitattributes && git commit -m "Add LFS tracking for PSD files" - Run
git lfs pullto fetch the actual objects.
Incorrect LFS Endpoint in Sourcetree
- Open Preferences → Git → LFS (or Repository Settings → Git LFS for per-repo override).
- Set the endpoint to the correct
/info/lfsURL of your remote. - Run
git lfs pullagain.
Network Block (Proxy/Firewall)
- If your organization uses a proxy, configure Git to use it:
git config --global http.proxy http://proxy.example.com:8080git config --global https.proxy http://proxy.example.com:8080 - Or whitelist the LFS domain in your firewall.
- Re-test with
curl -Iand thengit lfs pull.
Verification After Fixes
- Run
git lfs pulland watch forDownloading ...lines. - Open one of the previously pointer-only files in its native application (Photoshop for PSD, VLC for video). It should open normally.
- In Sourcetree, the file size column should now show the real byte count, not the pointer's ~130 bytes.
Limitations & Escalation
If git lfs pull still returns authentication errors (401/403) after correcting the endpoint and proxy, the issue is likely credential-related—expired tokens, missing SSH keys, or server-side permissions. Capture the full console output (GIT_TRACE=1 GIT_CURL_VERBOSE=1 git lfs pull) and provide it to Atlassian Support or the Git LFS maintainers along with your repository URL and Sourcetree version (Help → About Sourcetree).
Always clone the repository to a backup location before modifying .gitattributes or running destructive LFS commands (git lfs prune, git lfs migrate) to avoid accidental data loss.
0 replies
A thoughtful contribution can make all the difference. Be the first to share one.