#git-repository #git #git-tool #yaml #toml #manage #multiple

bin+lib git-repo-manager

管理多个 Git 仓库。您在文件中配置 Git 仓库,程序负责其余工作!

27 个版本

0.7.17 2024年8月15日
0.7.16 2024年4月27日
0.7.15 2023年11月6日
0.7.13 2023年5月6日
0.4.0 2021年11月29日

9#git-tool

Download history 1/week @ 2024-04-18 147/week @ 2024-04-25 11/week @ 2024-05-02 5/week @ 2024-05-09 14/week @ 2024-05-16 4/week @ 2024-05-23 2/week @ 2024-05-30 186/week @ 2024-07-25 35/week @ 2024-08-01

221 每月下载量

GPL-3.0-only

395KB
9K SLoC

Rust 4.5K SLoC // 0.0% comments Python 3.5K SLoC // 0.2% comments Jinja2 568 SLoC Shell 128 SLoC

GRM — Git 仓库管理器

GRM 帮助您以声明式方式管理 Git 仓库。在 TOML 或 YAML 文件中配置您的仓库,GRM 负责其余工作。

此外,GRM 还可以以直观的方式使用 Git 工作树。

请参阅 官方文档 了解安装和快速入门。

为什么?

我在机器上有许多仓库。我的东西、分支、其他人的仓库的快速克隆、从未启动的项目……简而言之,我失去了控制。

为了在机器之间同步这些仓库,我一直使用 Nextcloud。问题是,Nextcloud 对经常变化的小文件不太高兴,就像 .git 中的文件。Git 也假设这些文件尽可能以原子方式更新。Nextcloud 不能保证这一点,所以在我同步期间运行 git status 时,总会出现问题。并且解决这些冲突真是令人不快……

最后,我认为 Git 仓库根本不属于像 Nextcloud 这样的东西。Git 已经在管理内容和版本,所以没有必要让另一个工具做同样的事情。但当然,在新的机器上从头开始设置所有这些仓库太麻烦了。如果有一个命令可以克隆所有这些仓库怎么办?

此外,我曾经转移了我的个人 Git 服务器的域名。我手动更新了一些远程仓库,但仍然在长时间未触及的项目中遇到旧的、过时的远程仓库。如果在同一个地方更新所有这些远程仓库怎么办?

这就是GRM的诞生过程。我是一名基础设施即代码的粉丝,GRM有点像为你的本地Git仓库量身定制的Terraform。编写配置,运行工具,你的仓库就准备好了。唯一由Git跟踪的是仓库列表本身。

组件

链接

镜像

此仓库可在多个forge上找到

依赖项

~16–26MB
~456K SLoC