module

Hwaro::Utils::HwaroDir

Constants

DIR = ".hwaro"
GITIGNORE_CONTENT = "*\n"

* un-ignores nothing, so it also hides this .gitignore itself — exactly right for a directory that should not exist in the index.

Instance methods

ensure_self_ignore(dir : String = DIR) : Nil

Drop a self-ignoring .gitignore into dir (the .hwaro directory itself, never a subdirectory of it) unless one already exists.

Guarded by basename so a caller passing a spec tmp dir or a custom cache location can never sprinkle .gitignore files around the user's tree. Best-effort: git hygiene must never fail a build or a serve session, so filesystem errors (read-only checkout, permissions) are swallowed. Never overwrites — a user who deliberately un-ignored parts of .hwaro/ keeps their file.

Source