# ドラフト

**ドラフト** とは、まだ作業中のページのことです。執筆中でローカルでプレビューしている
間は表示されますが、本番には **決して公開されません**。ページ（またはフォルダ全体）を
ドラフトとして指定すると、Ovellum は `ovellum dev` でそれをはっきりとしたリボンと
サイドバーのバッジ付きで表示し、`ovellum build` からは除外します。

## ドラフトを指定する

**単一ページ** — フロントマター `draft: true`:

```markdown
---
title: New feature guide
draft: true
---

# New feature guide

Still writing this…
```

**フォルダ全体** — `_meta.json "draft": true`（配下のすべてにカスケードするため、
新しいセクション全体を一度にドラフトにできます）:

```json
{
  "title": "Upcoming",
  "draft": true
}
```

これだけです。コンテンツと同じ場所に置き、1 行で切り替えられ、git で追跡されます。
（ファイルを出し入れするための別の `_drafts/` フォルダは不要です。）

## 何が起こるか

| | `ovellum dev` / `watch` | `ovellum build`（本番） |
| --- | --- | --- |
| ドラフトページ | **表示** — リボン + サイドバーバッジ付き | **除外** |
| サイトマップ / RSS | 除外 | 除外 |
| ビルド出力 | — | *「Excluded N draft page(s)…」* と表示 |

これは **コマンドによって自動** で行われ、覚えておくべきフラグはありません。
必要に応じたオーバーライド:

- `ovellum build --drafts` — ビルドにドラフトを含めます（例えば、ドラフトを含めた
  本番ビルドをプレビューしたい場合）。
- `ovellum dev --no-drafts` — ローカルでドラフトを隠し、本番が公開する内容を
  そのまま確認します。

dev のドラフトページには、上部に *「Draft — visible locally only, never published」*
というバンドが表示され、すべてのドラフトにはサイドバーに **Draft** バッジが付くため、
作業中のものをライブのコンテンツと取り違えることはありません。

## ドラフトは未公開であって、秘密ではない

ドラフトはソースの中に存在するため、リポジトリにアクセスできる人なら誰でも目にします。
それこそが狙いです。バックアップされ、プルリクエストでレビューでき、チームから見える
ということです。ドラフトの仕組みが制御するのは **何が公開されるか** であって、
**誰がソースを読めるか** ではありません。本当に非公開にすべきページなら、コミット
しないでください（`.gitignore` に追加してください）。ただしその場合はバックアップと
共有を失います。

## `draft` と `ignoreFiles`

これは 2 つの異なるツールです:

- **`draft`** — ページは *コンテンツそのもの* です。解析・レンダリングされ、dev で
  プレビューできます。公開するまで本番からだけ差し控えられます。
- **[`site.ignoreFiles`](/ja/docs/reference/config/)** — 完全な除外です。ファイルは
  どの環境でも **一切解析もレンダリングもされません**。Ovellum にまったく触れさせたく
  ないコンテンツに使います。

公開するつもりのものを書いているときは `draft` を、ファイルを Ovellum に完全に放って
おいてほしいときは `ignoreFiles` を選びましょう。
