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.3.0.tar.gz (12.6 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.3.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for monarbor-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d1212dba2c467a765432a49ce9ccff39c5ab228dd99f1f1310b90113e51d6de8
MD5 e3460aea22991b2d43e490110fab972e
BLAKE2b-256 44c5daa7dbb168ad7348a5c7ae8f63345269953c08e4d15b0227f67e972e69f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for monarbor-0.3.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.3.0-py3-none-any.whl.

File metadata

  • Download URL: monarbor-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.8 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2851a18fb2f1e2b0a202ed1ec9b5af1f5287e4c22d9dd20d9793bf4ed83e763b
MD5 e113e0d487d9bf085084542f8b7ff8df
BLAKE2b-256 d554f53ef3ef52c1da9a32baf496c97f52750e2bf1ae7f123721ecf576ea0041

See more details on using hashes here.

Provenance

The following attestation bundles were made for monarbor-0.3.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