# APEXLang + Windows? Add this one Git setting

Excited to play around with APEXLang or SQLcl Project? What are you going to do?

*   Vibe Code some APEXLang
    
*   Export / Import APEX apps
    
*   Project Export your schema
    

Sounds fun right?

By the experiences I've had with the above, and especially working on Windows and sharing the Git Repository with other Mac OS users I am finding multiple issues but the main issue is that:

> Git stores text with LF, but on Windows git checks out files as CRLF which are causing every file to diff when I run a `project export` command.

The best option is to add a `.gitattributes` file at the repo root with:

```plaintext
* text=auto eol=lf
```

That tells Git to store text with LF and keep LF in the working tree for those files. It aligns windows users to how Mac OS and SQLcl work with files.

Therefore line endings are consistent across all machines and the problem is gone.

## When to do it?

Definitely before touching **any** SQLcl commands!

## How to do it?

If you are starting **a new repo**, then use github or similar UI to create a `.gitattributes` file at the repo root of main and then pull

If you are joining **an existing repo** that Mac OS users are already using, you have two options

*   Ask your Mac OS buddies to add `.gitattributes` file at the repo root of main, then push it to the remote, before you clone
    
*   Can't wait for your buddies to help you out? Clone the repository in this one liner.
    
    ```shell
    git clone --no-checkout <repo-url> temp && cd temp && echo "* text=auto eol=lf" > .gitattributes && git add .gitattributes && git checkout
    ```
    

If you've already cloned without doing this, honestly, throw the repo away and re-clone using a method above

This should fix any issues

## Other things I tried

```shell
-- Git never touches line endings globally.
git config --global core.autocrlf false
```

ENJOY

What's the picture? A recent [Betty's](https://www.bettys.co.uk/) window display - Visit Yorkshire
