Then I built an alternative using free Cloudflare Worker
https://github.com/est/req4cmt
It's a simple service that transform comment POST form data to JSON, append to a .jsonl file, then do a `git push`
It renders comments by `git fetch` from a .jsonl file from a remote repo, or simply via raw.githubusercontent.com if your repo was hosted by Github.
The advantange over Github issue/discussion based comment plugins:
1. All data is stored a .git
2. no login of any sort
Github OAuth login might leak all your repo data along with your `access_token` to the plugin provider.
The `git push` works for any remote. You can choose github/gitlab or whatever.
In case of comments you don't like, just delete the line and `git commit`
to erase the history entirely, use `git cherry-pick` and `git push -f`
It might be a nightmare for people not familiar with `git`, but for folks running a static blog like Hugo, they use lots of shell commands anyway.
Allowing force-push is considered an antipattern for Git, and generally best avoided. It's a safeguard against lost history and prevents data loss.
That aside, the comments are the history. Git is the wrong tool for the job. Why would you choose a generic version-control system designed for source code diffs & merges for the specialised task of chronologically-ordered comments? A database such as PostgreSQL is a far superior choice in just about every possible way. I admire your ingenuity here to make something out of what's available, but I respectfully disagree with this being a good way to capture user-generated content when there are better alternatives.