文末付源码 ⭐️

背景

不知道大家会不会有这样的需求,一个版别需求发布好多个项目(咱们做系统使用一个版别最多或许会有 20+ 个项目),每个项目都在不同的 git 库房;发布前需求检查一下最新的提交有没有合入、发布后还需求给一切项目库房打上发布版别的 tag;

这种方法假如手动去做,那必定便是体力活了;一个个库房点开操作…

自动化脚本

作为程序员怎么能够忍受这种重复性的工作呢?我就写了个 shell 脚本,能够将一行指令行操作一切的库房;

一行指令就能够将一切库房的最近提交日志打出来、也能够用一行指令给一切库房打上 tag;乐滋滋~

可是用了一阵子后,发现有些需求满意不了了;比如:

  1. 每次只能操作悉数项目:有的版别不需求悉数项目发布,所以不需求悉数打 tag;
  2. 一切项目的分支只能相同:打 tag 是要根据分支的,假如不同项目分支名不相同,那就没得玩了(除非给脚本加上许多参数);
  3. 日志检查不友好:指令行窗口同时看一切库房的最近日志实在不友好;

需求满意不了就想方法,刚好会写 Flutter,而 Flutter 也是支撑桌面客户端开发的,所以就用闲暇时刻写了个 Mac 客户端了。

可视化桌面客户端

主页 & 多库房一键 clone

输入对应库房地址后,承认后到主页,点击同步按钮,即可 clone 一切库房;

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

设置

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

控制台日志

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

单个库房切自己的分支

每个库房能够点击切换到自己的分支;

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

多库房一键切换分支

假如大部分库房分支名相同,也是能够一键切换;选择库房后,能够一键给一切库房切到对应的分支(库房假如没有对应分支就不会切);

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

多库房一键打 tag

现在只支撑 ssh 方法的库房打 tag

打 tag 是根据当时分支的,上面切分支的功用能够切不同分支;所以当然就支撑为不同库房的不同分支打相同的 tag 了;

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

多库房一键看最近提交日志

这个功用适当于一个辅佐功用吧,有时候发布前总想承认一下代码有没有合入发布分支,假如一个个库房去看就适当费事;这样勾选后,一键检查得多香。

用 Flutter 写了个 Mac 的 Git 多仓库管理客户端

下载体会&源码

理论上支撑 Windows 桌面端应该做下简略的构建装备就能够,不过我手头没有 Windows 电脑,有兴趣的同学能够着手编一个

  • 直接下载体会:github.com/linkaipeng/…
  • 源码库房地址:github.com/linkaipeng/…

喜欢的来个 ⭐️ ~