Syncing / Backing up to another Gitea instance

Hi all
I run a Gitea instance using Umbrel on a small box.
I want to back up the git repos to protect them in case of fire/damage/zombies etc.

What are my options? In my mind I’d like to sync the repos to another gitea running on another Umbrel unit somewhere else, but am open to ideas.

Is there anything in Gitea that can help me?


The easiest and already existing solution is certainly Usage: Backup and Restore - Docs
However, you should shut down Gitea for that.
If that is not what you want, you can either mirror the repos manually to the other instance (if it is a limited number of repos, but once set up it will continuously update the repos), or you build something yourself using the API.
I don’t see another way to backup the repos.

Thanks. Mirroring seems ideal for me.

The docs don’t seem clear on when the mirror occurs. It’s says it will kick in shortly after being configured but is it then automatic after any commits or do does it run on a schedule, or is it manual?

Before 1.18 (not yet released), push mirroring only occurs periodically after a timeout you can set yourself.
From then, you can also specify to sync the mirror once a new commit is pushed (to the default branch, I think, but I’m not sure about that).
Pull mirroring always has to use an interval as it cannot guess when new content is available.

Thanks, and after .18? Will there be a change?

That will change. I don’t think anything else changes.