github RayLabsHQ/gitea-mirror v3.27.0

one hour ago

Features

  • Mirror options can now be set per repository and per organization (#362, requested in #361 by @MMMMMoris). Options that were global only, Git LFS, issues, pull requests, releases, wiki, labels and milestones, can now be overridden on individual repos and orgs.

    Settings resolve per option: repository, then organization, then your global config. Anything left on "Inherit" falls through, so turning LFS off for one repo leaves everything else alone.

    This was mainly about repos that can't be mirrored with LFS enabled. We hand lfs: true to Gitea's migration API, so the LFS pull happens inside Gitea's own migration. When it fails, Gitea throws out the whole migration and there's nothing left for us to salvage, which is why those repos would fail every time. You can now turn LFS off for just that repo and mirror the rest of it.

    Editing lives in the three-dot menu on the Repositories and Organizations pages. Both pages also get a "Custom" badge on rows that override something, and a filter to show only those.

  • Options that can't take effect are now disabled and explain why, instead of silently doing nothing. Starred repos with "starred code only" turned on show their metadata options greyed out with the reason, and the labels option explains that issues mirroring already syncs labels.

Fixes

  • Repository and organization updates no longer wipe the destination override. Both endpoints previously rewrote that field on every request, so an update touching anything else would clear it. They now only change the fields you actually send.
  • Scheduled syncs now honor mirror settings. The sync path read its own copy of the options, so changes applied on the first mirror and were ignored on every sync after that.

Notes

Adds migration 0014, which adds two nullable columns. Existing repos and orgs read as "inherit", so nothing changes until you set an override.

Full Changelog: v3.26.2...v3.27.0

Don't miss a new gitea-mirror release

NewReleases is sending notifications on new releases.