📥

Zennの既存記事をGitHubリポジトリに取り込む方法

に公開

Zennの既存記事をGitHubリポジトリに取り込む方法

Zenn CLIを導入して記事をGitHubで管理するようにした場合、既にZennで書いた記事をGitHubリポジトリに取り込む方法を紹介します。

手順

1. GitHubリポジトリとの連携を設定する

まだGitHubリポジトリとの連携が完了していない場合は、まずZennとGitHubリポジトリを連携するの手順に従って連携を設定します。

2. 投稿データをエクスポートする

Zennには既存の記事をエクスポートする機能があります。

  1. 投稿データをエクスポート(要ログイン)からエクスポート
  2. ダウンロードしたZIPファイルを解凍すると、articlesbooksscrapsといったディレクトリが含まれています

3. エクスポートしたファイルをリポジトリに配置

articlesbooksディレクトリをそのままGitHubリポジトリのルートディレクトリに配置します。

# エクスポートファイルを解凍したディレクトリから
mv exported-zenn-files/articles/* your-repository/articles
mv exported-zenn-files/books/* your-repository/books

4. 変更をコミットしGitHubへプッシュ

ファイルをコミットしてGitHubリポジトリにプッシュします。

git add .
git commit -m "Import existing Zenn articles"
git push origin main

5. Bookの場合の注意点

エクスポートしたBookをデプロイする場合、Bookごとにconfig.yamlallow_override: trueを追加する必要があります。これにより、既存のBookを上書きすることができます。

注意点

  • リポジトリ同期には記事(article)と本(book)が対応しており、スクラップ(scrap)は対応していません
  • 上書きの対象かどうかはスラッグ(ファイル名の一意の文字列)が同一かどうかにより決まります
  • エクスポートした記事をデプロイした後も、コメントやいいねなどのメタデータはそのまま引き継がれます

参考リンク

GitHubで編集を提案

Discussion