如何用终端驯服你的 Multi-Repo 混乱

发布: (2025年12月10日 GMT+8 15:57)
4 min read
原文: Dev.to

Source: Dev.to

封面图片:使用终端驯服你的多仓库混乱

作为全栈开发者或 SRE,你很可能生活在 微服务和多仓库 的世界里。
你本地克隆了 10、20,甚至 50+ 个仓库:

  • apps/frontend
  • apps/backend
  • libs/ui-kit
  • infrastructure/terraform
  • …以及那个你已经忘记的副项目。

问题:“上下文疲劳” 🛑

每天早上仪式感都是一样的:进入每个文件夹,检查是否忘记推送更改或是否落后于 origin/main

cd apps/frontend
git status
# nothing to commit

cd ../../libs/ui-kit
git status
# …

手动切换上下文会严重降低生产力,让你在写下第一行代码之前就被打断,失去流状态。

现有的 GUI(GitHub Desktop、Sourcetree)往往太慢或臃肿。lazygit 很棒,但它的设计是一次只专注于 一个 仓库,而不是管理 五十个

解决方案:Git 的 “上帝模式” 仪表盘 ⚡️

我需要一个工具具备以下特性:

  • 极速 – 启动瞬间(使用 Go 编写)
  • 终端优先 – 仍然在 CLI 中工作
  • 多仓库 – 在同一视图中看到 所有 项目的状态

于是,我构建了 Git‑Scope

Git‑Scope 演示

关键特性

  • 递归发现 – 自动在 ~/projects 文件夹中查找 git 仓库。
  • “脏先排” – 将有未提交更改的仓库提升到顶部,防止工作丢失。
  • 模糊搜索 – 输入 / 即可按名称跳转到任意项目。

适用人群(ICP 与使用场景)

1. 微服务后端工程师 🏗️

痛点:一个功能涉及 5 个服务(authpaymentscore 等),你在其中 3 个服务里编辑了代码,却忘记具体是哪几个。

解决方案:打开 Git‑Scope。 “脏” 状态会把这 3 个已修改的仓库冒泡到最上方。几秒钟内完成提交和推送,让 PR 保持同步。

2. SRE / DevOps 工程师 🛠️

痛点:管理数十个 Terraform 模块或 Ansible 角色。需要在执行 plan 之前确认本地副本是否落后于 origin/main

解决方案:仪表盘一眼即可看出哪些基础设施仓库落后(↓ 2 提交落后)。无需 cd 进入每个目录即可拉取更新。

3. 开源维护者 🐙

痛点:维护 10+ 个库,随处散落着随机的 stash 和未推送的实验分支。

解决方案:使用 模糊搜索/)瞬间在库之间跳转,审查本地 PR。使用 “Clean” 过滤器找到那些被遗忘的实验分支,以便删除或推送。

安装方式

macOS / Linux(Homebrew)

brew tap Bharath-code/tap
brew install git-scope

直接使用 Go

go install github.com/Bharath-code/git-scope/cmd/git-scope@latest

为什么我会构建它

我想要一个遵循 Unix 哲学 的工具:专注做一件事且做到极致。
Git‑Scope 并不想取代 gitlazygit,而是对它们的补充。它提供了我工作流中缺失的高层次雷达功能,帮助我 保持流畅,无摩擦地管理本地 git 世界。

欢迎在 GitHub 上查看并告诉我你的想法!

Back to Blog

相关文章

阅读更多 »

Bhupesh Singh Nitwal Web 开发者

Forem 社区 Forem 动态 !Forem 标志 https://media2.dev.to/dynamic/image/width=65,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploa...