Skip to main content

Monarbor - AI 友好的逻辑大仓命令行工具

Project description

Monarbor

AI 友好的逻辑大仓命令行工具。一个 mona.yaml 配置文件描述所有仓库,一套命令统一管理。

安装

pip install monarbor

开发模式安装:

pip install -e .

快速开始

# 初始化一个逻辑大仓
monarbor init

# 添加仓库
monarbor add --path business-a/frontend --name "前端项目" --url "https://git.example.com/org/frontend.git"

# 拉取所有代码
monarbor clone

# 查看状态
monarbor status

命令一览

命令 说明
monarbor clone 拉取大仓下所有项目代码
monarbor pull 更新所有已 clone 仓库的代码
monarbor status 显示所有仓库的分支、改动、同步状态
monarbor list 以树形结构列出所有仓库
monarbor exec <cmd> 在所有仓库中执行命令
monarbor checkout <dev|test|prod> 批量切换到指定分支类型
monarbor init 初始化新的逻辑大仓
monarbor add 向当前大仓添加仓库

常用场景

拉取所有代码

# 默认 clone dev 分支
monarbor clone

# clone 测试分支
monarbor clone -b test

# 递归 clone(包括嵌套的子逻辑大仓)
monarbor clone -r

# 只 clone 某个业务线
monarbor clone --filter business-a

批量切换分支

# 全部切到测试分支
monarbor checkout test

# 全部切到生产分支
monarbor checkout prod

批量执行命令

# 查看每个仓库最近 5 条提交
monarbor exec "git log --oneline -5"

# 全部安装依赖
monarbor exec "npm install"

# 只在某个业务线执行
monarbor exec "pnpm build" --filter business-a

嵌套逻辑大仓

当子目录下存在自己的 mona.yaml 时,带 -r 参数即可递归处理:

monarbor clone -r      # 递归 clone
monarbor status -r     # 递归查看状态
monarbor list -r       # 递归列出树形结构

mona.yaml 格式

name: "我的大仓"
description: "大仓描述"
owner: your-name

repos:
  - path: business-a/frontend
    name: "前端项目"
    repo_url: "https://git.example.com/org/frontend.git"
    tech_stack: [typescript, react]
    branches:
      dev: develop
      test: release/test
      prod: main

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

monarbor-0.1.0.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

monarbor-0.1.0-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file monarbor-0.1.0.tar.gz.

File metadata

  • Download URL: monarbor-0.1.0.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for monarbor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 67cd13b20a2881a1578795f965fd98bf7cc3411d5b35371dfbe74cb3ca6fe940
MD5 750d2b5fa1240712d7117d934cc340a3
BLAKE2b-256 50adbc7c70e9dd96ec16baae12147b38be84d4657ddbf044b2f2da7c2c3fc4c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for monarbor-0.1.0.tar.gz:

Publisher: publish.yml on jeffkit/monarbor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file monarbor-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: monarbor-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for monarbor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47228440143461a847daadbf2f8f9f60871f76f9d826764c0c4ab65888c889ea
MD5 c448553d43b9993fdf934e3c45da1f52
BLAKE2b-256 df379b7b1070b6cecc760bd09ce133728e9edd49a89d988b86daeb62d4ce3aed

See more details on using hashes here.

Provenance

The following attestation bundles were made for monarbor-0.1.0-py3-none-any.whl:

Publisher: publish.yml on jeffkit/monarbor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page