I tried codeberg, used it a year, then early this year in all their wisdom codeberg decided to show adverserial random text instead of my repo, reporteldly to mess up llm training to user agents they weren't sure were human. Codeberg had one job, serve my repo, it didn't do that, when brought up, I was told it was a feature not a bug, they could maybe whitelist me but that wasn't my problem, it was that random people…
codeberg's one job gets interfered with by freeloaders hammering expensive views (like git blame) inconsiderately.
* For every Git commit, fetch the version of every file in the repository at that commit.
* See git blame for every file at every commit.
* Attempt to download the archive of each repo at every commit.
* Run every possible pull request search filter combination.
* Run every possible issue search filter combination.
* Fetch each of those URLs at random from some residential IP in Brazil that had not ever accessed my server before.
Afterward, it dropped to several hundred. Expect anti-attack features to keep getting stranger and more visible as scraper get still more aggressive.