Git 镜像守护进程

时间:2024-07-18 12:47:55
【文件属性】:

文件名称:Git 镜像守护进程

文件大小:27KB

文件格式:ZIP

更新时间:2024-07-18 12:47:55

git rust rocket mirroring

洛尔lohr是一个 Git 镜像工具。我创建它是为了解决我遇到的一个简单问题:我在https://git.alarsyo.net托管我自己的 git 服务器,但想将我的公共项目镜像到 GitHub / GitLab,以用于备份和可见性目的。GitLab 有一个镜像设置,但据我所知,它不允许多个镜像。我还希望我的实例成为唯一的事实来源。这个怎么运作Gitea 设置为在每次推送更新时将 webhooks 发送到我的lohr服务器。当lohr收到推送时,它会克隆相关的存储库,或者如果已经克隆则更新它。然后它将更新推送到存储库根目录下.lohr文件中列出的所有遥控器。破坏性的这是一个非常具有破坏性的过程:从单一事实来源中删除的任何内容也有效地从任何镜子中删除。安装lohr发布在 crates.io 上,因此您可以使用cargo install安装它:$ cargo +nightly install lohr我们目前需要一个夜间编译器,因为Rocket需要一个编译器(在稳定的 Rust 上编译的 0.5.0 正在制作中,敬请期待!)。您可以使用以下命令安装夜间工具链:$ rustup insta


【文件预览】:
lohr-main
----.gitignore(16B)
----src()
--------signature.rs(3KB)
--------main.rs(3KB)
--------gitea.rs(281B)
--------settings.rs(656B)
--------job.rs(6KB)
----default.nix(320B)
----flake.lock(1KB)
----Cargo.lock(38KB)
----.pre-commit-config.yaml(487B)
----Cargo.toml(836B)
----.github()
--------workflows()
----LICENSE-MIT(1KB)
----README.md(5KB)
----.envrc(104B)
----.lohr(84B)
----flake.nix(1KB)
----shell.nix(318B)
----rust-toolchain(7B)
----LICENSE-APACHE(11KB)

网友评论