From fe83858df7cf8cff39800c1de5deec29ab511e6f Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Mon, 29 Mar 2021 17:34:43 +0200 Subject: [PATCH] add README --- README.org | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 README.org diff --git a/README.org b/README.org new file mode 100644 index 0000000..7a9770b --- /dev/null +++ b/README.org @@ -0,0 +1,22 @@ +#+title: lohr + +=lohr= is a Git mirroring tool. + +I created it to solve a simple problem I had: I host my own git server at +[[https://git.alarsyo.net]], but want to mirror my public projects to GitHub / +GitLab, for backup and visibility purposes. + +GitLab has a mirroring setting, but it doesn't allow for multiple mirrors, as +far as I know. I also wanted my instance to be the single source of truth. + +* How it works + +Gitea is setup to send webhooks to my =lohr= server on every push update. When +=lohr= receives a push, it clones the concerned repository, or updates it if +already cloned. Then it pushes the update to *all remotes listed* in the [[file:.lohr][.lohr]] +file at the repo root. + +** Destructive + +This is a very destructive process: anything removed from the single source of +truth is effectively removed from any mirror as well.