blogsyncで削除した記事がサイトに残る問題の解決

問題

はてなブログで記事を削除しても、静的サイトから消えない。

原因

blogsync pull
リモートで削除された記事のローカルファイルを自動削除しない。 一度pullしたファイルはローカルに残り続ける。

解決策

GitHub Actionsのワークフローで、
pull前にentriesディレクトリをクリアする。


 - name: Pull blog entries
  run: |
    rm -rf entries/
    blogsync pull ${{ secrets.DOMAIN }}

- name: Commit changes if any
  run: |
    git add -A entries/  # -A で削除も追跡

ポイント

  • rm -rf entries/ で毎回クリーンな状態からpull
  • git add -A で削除されたファイルもgit追跡対象に

参考

[https://github.com/x-motemen/blogsync:embed:cite]

[https://developer.hatena.ne.jp/ja/documents/blog/apis/atom:embed:cite]