I have a Unity project ([github link](https://github.com/raidenfreeman/ExperimentNew)), that doesn't work after being cloned. Even though the files are there, they have incorrect contents. For example .png files are replaced with text:

> 
> version <https://git-lfs.github.com/spec/v1>
> oid sha256:089f8198df161233681006c4243f6d6babb2e125062a21ea727d0d6c97889d26
> size 1035
> 
> 
> 

Some DLLs that I have from external asset packages (for example DOTween), are also probably not stored correctly, because the compiler complains about undeclared namespaces.

> 
> Assets/External Dependencies/Demigiant/DOTween/Examples/Basics.cs(3,7): error CS0246: The type or namespace name `DG' could not be found. Are you missing an assembly reference?
> 
> 
> 

**UPDATE:**
Actually, the dlls are not even there. Why? They're not part of the gitignore.

I have made sure to set `Version Control Mode` to `Visible Meta Files` and
`Asset Serialization Mode` to `Force Text`.

I tried moving the project to a new directory, deleting the .git folder, deleting `Library`, remaking everything (reopening with Unity, and then `git init`), and pushing to a new repo. The new repo has the exact same issues as the previous one.

I'm using the [default .gitignore for Unity](https://github.com/github/gitignore/blob/master/Unity.gitignore)

And the following .gitattributes (to enable LFS):

```
# 3D models
*.3dm filter=lfs diff=lfs merge=lfs -text
*.3ds filter=lfs diff=lfs merge=lfs -text
*.blend filter=lfs diff=lfs merge=lfs -text
*.c4d filter=lfs diff=lfs merge=lfs -text
*.collada filter=lfs diff=lfs merge=lfs -text
*.dae filter=lfs diff=lfs merge=lfs -text
*.dxf filter=lfs diff=lfs merge=lfs -text
*.fbx filter=lfs diff=lfs merge=lfs -text
*.jas filter=lfs diff=lfs merge=lfs -text
*.lws filter=lfs diff=lfs merge=lfs -text
*.lxo filter=lfs diff=lfs merge=lfs -text
*.ma filter=lfs diff=lfs merge=lfs -text
*.max filter=lfs diff=lfs merge=lfs -text
*.mb filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
*.ply filter=lfs diff=lfs merge=lfs -text
*.skp filter=lfs diff=lfs merge=lfs -text
*.stl filter=lfs diff=lfs merge=lfs -text
*.ztl filter=lfs diff=lfs merge=lfs -text
# Audio
*.aif filter=lfs diff=lfs merge=lfs -text
*.aiff filter=lfs diff=lfs merge=lfs -text
*.it filter=lfs diff=lfs merge=lfs -text
*.mod filter=lfs diff=lfs merge=lfs -text
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.ogg filter=lfs diff=lfs merge=lfs -text
*.s3m filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.xm filter=lfs diff=lfs merge=lfs -text
# Fonts
*.otf filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
# Images
*.bmp filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.hdr filter=lfs diff=lfs merge=lfs -text
*.iff filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.pict filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
*.tif filter=lfs diff=lfs merge=lfs -text
*.tiff filter=lfs diff=lfs merge=lfs -text
# Collapse Unity-generated files on GitHub
*.asset linguist-generated
*.mat linguist-generated
*.meta linguist-generated
*.prefab linguist-generated
*.unity linguist-generated

```

---

UPDATE:
=======

After further investigation, it seems that the png files, get overwritten (by unity?) when the project gets opened after cloning. They exist correctly in the remote repository. The external dlls on the other hand do not get uploaded at all.