このリポジトリでは Zenn CLI と Qiita CLI によって、Zenn と Qiita の記事の投稿を管理しております。
- Zenn CLI:
- Qiita CLI:
具体的には、Zenn のアカウントと紐付けられているこのリポジトリの articles に Zenn の記事を書き、それを push することで Zenn へ記事が投稿され、その過程で git hook の pre-commit で実行されるスクリプトの処理で、Qiita CLI により、Qiita 用の記事の生成と投稿を行っております。
つまり、Zenn が親、Qiita が子の関係になっております。
また、Zenn と Qiita には全く同じ記事が投稿され、「Zenn のみに投稿したい」、「Qiita のみに投稿したい」ということは、一旦、できなくなっております。
以下の git hook を設定して、articles に Zenn 用の記事を書いて、push するだけです。
git config --local core.hooksPath .githooks
commit せずに実行したい場合は以下のコマンドでも実行できます。
sh zenn-to-qiita.sh
※ git hook を設定していれば pre-commit によっても実行されます。
git config --local --unset core.hooksPath .githooks
Qiita を親にして、Zenn が子にできなくもなさそうですが、一度、Qiita から Zenn に完全移行した経緯から、Zenn を親にせざるを得なかったためそうなっております。
以前は Qiita の記事は Qiita CLI がなく GitHub 管理することができなく、Zenn では GitHub 管理することができたので移行したのですが、 Qiita CLI がでたことでそんなことする必要もなくなり、Qiita の方が記事がよくみられる傾向にあったので、どうせ両方とも GitHub 上で管理できるので、同じリポジトリで同じ記事を管理できないかと思い、このようになりました。
ただ、その経緯による制約もあり、記事の管理の関係上、新しく書く Zenn の記事のマークダウンファイル名は yyyy-mm-dd-
で開始しなればならなくなっております。
また、Qiita から Zenn に移行した際のファイルがリポジトリに残ってるのもその影響です。(消してもいいのですが、とりあえずとっておいています。)
「Qiita しかやっていない」、「Zenn しかやっていない」という状況であれば、やっている方を親にして、やっていない方を子にする方がいいと思います。