Auto Gitignore Output
Requirements
Requirement: Plugin writes a self-managed gitignore into the output directory
After generating all Markdown pages, generateOpenSpecPages() SHALL write a .gitignore file to <absoluteOutDir>/.gitignore containing rules that exclude all files within the directory from version control while keeping the .gitignore file itself tracked.
The exact content written SHALL be:
# Generated by vitepress-plugin-openspec — do not commit generated files.
*
!.gitignoreOutput directory is newly created
- WHEN
generateOpenSpecPages()runs and the output directory did not previously exist - THEN the directory is created, all pages are written, and
<outDir>/.gitignoreexists with the correct content
Output directory already exists without a gitignore
- WHEN
generateOpenSpecPages()runs and<outDir>/.gitignoredoes not yet exist - THEN
<outDir>/.gitignoreis created with the correct content
Output directory already has a gitignore (idempotent overwrite)
- WHEN
generateOpenSpecPages()runs and<outDir>/.gitignorealready exists (with any content) - THEN
<outDir>/.gitignoreis overwritten with the correct content, leaving no stale entries
Gitignore file is always the last file written
- WHEN
generateOpenSpecPages()completes successfully - THEN
<outDir>/.gitignoreexists alongside all generated Markdown files