.gitignore for OCaml

OCaml compiled object and interface files, opam build artifacts.

Quick presets

Selected (1)
OCaml
Your selections never leave your browser. Generation happens entirely client-side.
Raw

17 patterns · 263 B

# Generated by DevZone Tools — https://devzone.tools/tools/gitignore-generator
# Templates: OCaml
# 2026-04-20

# ---- OCaml ----
# OCaml
*.annot
*.byte
*.byte.exe
*.cma
*.cmi
*.cmo
*.cmt
*.cmti
*.cmx
*.cmxa
*.cmxs
*.native
*.native.exe
*.o
*.a
_build/
.merlin

What this template ignores

Ignores OCaml compiled objects (.cmo, .cmx), interfaces (.cmi), libraries (.cma, .cmxa), dune build output (_build/), and .merlin LSP files.

Frequently asked questions

Do I need to commit .gitignore?
Yes — .gitignore should be committed to the repository so all collaborators benefit from the same ignore rules.
How do I add custom patterns?
Open your .gitignore file and add the pattern on a new line. Use # for comments, * for wildcards, / to match directories, and ! to un-ignore a previously ignored path.
How do I ignore a file that is already tracked?
Adding a file to .gitignore does not remove it from tracking if it was previously committed. Run: git rm --cached <file> to stop tracking it without deleting the file locally.
What is _build/ in OCaml?
_build/ is the output directory used by the dune build system. All compiled artifacts go there and should not be committed.

Looking for something else? Browse all templates →