# Every source file in this pack is written LF. Without this, a clone on
# Windows checks out CRLF and the next commit shows every line of every file
# as changed -- which would bury real diffs in a pack whose whole value is
# being able to see what changed between renders.
* text=auto eol=lf

# Images and video the docs might carry.
*.png binary
*.jpg binary
*.mp4 binary

# ...except the doc images, which MUST be LFS. The note below says the Hub
# refuses a plain blob over 10 MB; that is out of date. On 2026-08-30 it
# rejected the whole push over three PNGs of 262-545 KB -- "Your push was
# rejected because it contains binary files" -- so the Hub now wants every
# binary in Xet/LFS regardless of size. GitHub's LFS quota is 1 GB and these
# are about 1.1 MB total, so paying it here costs nothing and is what keeps a
# single `git push origin main` reaching both hosts.
# NOTE: an LFS-tracked file is served as its 131-byte POINTER by
# raw.githubusercontent.com and by github.com/<o>/<r>/raw/ -- 200 OK,
# text/plain, and every <img> silently broken. The host that resolves LFS is
# media.githubusercontent.com/media/<o>/<r>/<ref>/<path>, which is what the
# README and pyproject Icon point at. Do not "tidy" those back to raw.
docs/img/*.png filter=lfs diff=lfs merge=lfs -text

# ---------------------------------------------------------------------------
# Below is HuggingFace's default LFS ruleset, kept because this repo is
# mirrored to huggingface.co/sandpies/ComfyUI-Hand-Tie-Clips and the Hub
# refuses a plain blob over 10 MB. Nothing in the pack matches these patterns
# today -- they are here so that the day something does, it lands correctly on
# both hosts rather than failing the push to one of them.
# ---------------------------------------------------------------------------
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
