> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flexagon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Build / Deployment Issues Due to Git LFS Pointer Files Instead of Actual file

> Git Large File Storage (LFS) is a Git extension that handles large binary files efficiently. Instead of storing the full binary content in the reposit

Git Large File Storage (LFS) is a Git extension that handles large binary files efficiently. Instead of storing the full binary content in the repository, Git LFS replaces those files with small text pointer files inside the repo, while the actual file content is stored separately on an LFS server.

Common file types tracked with LFS include:\
• Binary/compiled files — .jar, .class\
• Oracle Forms files — .fmb, .rdf\
• Rich text files — .rtf\
• Other large binary assets (images, videos, archives)

## **How to detect if a repository uses Git LFS**

The easiest way to check whether a repository uses Git LFS is to look for a .gitattributes file at the root of the repository.

If the file exists, open it and look for entries like these:

\*.rtf filter=lfs diff=lfs merge=lfs -text\
\*.fmb filter=lfs diff=lfs merge=lfs -text\
\*.rdf filter=lfs diff=lfs merge=lfs -text\
\*.jar filter=lfs diff=lfs merge=lfs -text\
\*.class filter=lfs diff=lfs merge=lfs -text

Each line tells Git that files matching that pattern are managed by LFS — only pointers are stored in the repository, and the actual binaries live on the LFS server.

ℹ️ Tip: If the .gitattributes file is absent, or none of the entries reference filter=lfs, then Git LFS is not in use for that repository.

Attribute reference:\
• filter=lfs — Routes the file through the LFS filter driver on checkout and push.\
• diff=lfs — Uses the LFS diff driver when comparing file versions.\
• merge=lfs — Uses the LFS merge driver when resolving merge conflicts.\
• -text — Tells Git to treat the file as binary (no line-ending conversion).

## **Where Git LFS must be installed**

Git LFS must be installed on the FlexDeploy server and on any endpoint server where a workflow performs Git operations.

## **What happens if Git LFS is not installed**

If Git LFS is not installed on the server performing the checkout, Git will check out the raw pointer file instead of the actual binary. A pointer file looks like this:

version [https://git-lfs.github.com/spec/v1](https://git-lfs.github.com/spec/v1)\
oid sha256:4d7a214614ab2935c943f9e0ff69d22eadbb8f32b1258daaa5e2ca24d17e2393\
size 132848

This pointer is meaningless to applications expecting a real binary file, causing them to fail when they try to open or execute it.

Common error (Oracle Forms):

FRM-10043: Cannot open file.\
Form not created.

Root cause: The Forms runtime received a Git LFS pointer file instead of a valid compiled form. Because the pointer is not a recognised binary format, Oracle Forms cannot parse or open it.

**Resolution steps**

1. Verify Git LFS is installed\
   Run the following command on the relevant server:

```
git lfs version
```

If installed, you will see output like: git-lfs/3.x.x (...)\
If the command is not found, Git LFS needs to be installed.

2. Install Git LFS

```
git lfs install
```

3. Re-run the FlexDeploy build or checkout\
   After installing Git LFS, re-trigger the FlexDeploy build or deployment. Git will now correctly resolve LFS pointers and download the actual binary files during checkout

### Quick diagnostic checklist

☐ Check for a .gitattributes file at the root of the repository.\
☐ Confirm .gitattributes entries include filter=lfs for the affected file types.\
☐ Identify the correct server: FlexDeploy server (package-based) or endpoint server (standard).\
☐ Run git lfs version on that server to confirm Git LFS is installed.\
☐ If not installed: install Git LFS and run git lfs install.\
☐ Re-run the FlexDeploy build, or run git lfs pull if a checkout already exists.
