Skip to content

API 参考

欢迎使用 Gitmars API 参考文档。

分类概览

智能导航

一条指令完成所有操作

配置

初始化和配置管理

工作流

分支创建、合并、更新等核心工作流

效率工具

复制、构建、暂存等提效工具

管理员

管理员专用命令

命令索引

命令说明
gitm go智能导航指令
gitm init初始化配置
gitm config配置查询与设置
gitm start创建分支
gitm combine分支阶段提测
gitm end完成开发
gitm update更新分支
gitm continue继续未完成的操作
gitm copycherry-pick 简化操作
gitm build构建 Jenkins
gitm build-mp构建小程序 Jenkins
gitm miniprogram小程序专用指令
gitm branch分支操作
gitm revert撤销提交
gitm undo撤回提交记录
gitm redo重做提交记录
gitm save暂存文件
gitm get恢复暂存文件
gitm cleanbranch清理分支
gitm log查询日志
gitm hookGit 钩子指令
gitm runGit 钩子运行指令
gitm upgrade升级 gitmars
gitm clean清除缓存
gitm suggestGit 操作建议
gitm approve处理远程合并请求
gitm review远程 review 代码
gitm status查看分支状态
gitm link软链接
gitm unlink解除软链接
gitm postmsg推送消息
gitm alias安装和移除快捷方式
gitm admin create管理员创建主干分支
gitm admin publish发布分支
gitm admin update更新主干分支代码
gitm admin clean清理分支
gitm permission提交权限
gitm version查看版本

智能导航

gitm go

智能导航指令,只记一条指令就能完成所有功能使用

  • 使用:gitm go
  • 参数:
参数说明类型可选值必填默认
command指令名称Stringcombine、end、update、build、build-mp、miniprogram、start、undo、redo、suggest、approve、review、admin.publish、admin.update、admin.create、admin.clean、admin.approve、branch、copy、get、save、cleanbranch、clean、revert、link、unlink、postmsg-
  • 示例:
shell
gitm go build
  • 演示:

    gitmars-go.gif

配置

gitm init

初始化配置,按照提示输入即可

gitm config

配置查询与设置

设置单个配置

  • 使用:gitm config <option> [value]
  • 参数:
参数说明类型可选值必填默认
option配置名称String--
value配置值String--
  • 示例:
  1. 设置 master 分支名称为 main
shell
gitm config master main
  1. 设置 apollo 配置(json)
shell
gitm config apolloConfig "{ ... }"

查询配置

  • 使用:gitm config list [option]
  • 参数:
参数说明类型可选值必填默认
option配置名称String--
  • 示例:
  1. 查询全部配置
shell
gitm config list
  1. 查询 apollo 配置
shell
gitm config list apolloConfig

工作流

TIP

创建周四任务分支(release)、日常更新 BUG 分支(bugfix)这两种类型的分支、项目框架相关的 support 分支

gitm start

短指令:gitm st

开始任务,创建分支

  • 使用:gitm start <type> <name> [-t --tag <tag>]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringfeature/bugfix/support-
name分支名称String--
  • 传值:
名称简写说明类型可选值传值必填默认
--tag-t从 tag 创建分支String-true''
  • 示例:
  1. 创建主流程分支
shell
# start bugfix branch
gitm start bugfix 20001
# start feature brancg
gitm start feature 1001
  1. 从 tag 创建 bugfix 分支
shell
# tag 20211010
gitm start bugfix 1001 --tag 20211010

gitm combine

短指令:gitm cb

v2.11.0 新增--description传参
v5.3.0 增加data传值,支持传入额外的参数
v7.0.0 开始支持批量合并

bugfix 分支和 feature 分支需要提交到 dev 或者预发布环境时使用 combine 指令来自动执行合并

  • 使用:gitm combine [type] [name] [-a --add] [-m --commit [message]] [-d --dev] [-p --prod] [-b --build [build]] [--data <data>] [--description [description]] [--no-bugfix] [--as-feature] [-f --force]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringfeature/bugfix/support当前分支类型
name分支名称String-当前分支名称
  • 传值:
名称简写说明类型可选值传值必填默认
--add-a是否需要执行 addBoolean--false
--commit-m是否需要执行 commit,需要填写 messageString-''
--description本次提交的原因描述String-''
--dev-d是否同步到 dev,与--prod 两者必传一个Boolean--false
--prod-p是否同步到 prod,与--dev 两者必传一个Boolean--false
--build-b需要构建的应用Stringall/...all
--no-bugfix是否不同步到 bug 分支,这个参数仅对 support 分支有效Boolean--false
--as-featurebugfix 分支需要合并到 release 时使用,仅对 bugfix 分支有效Boolean--false
--force-f是否强制发起合并请求Boolean--false
--data需要传输的其他数据,传入JSON字符串String-'{}'
  • 示例:
  1. 合并当前分支到 alpha
shell
gitm combine -d
# or
gitm cb -d
  1. 合并当前分支到 alpha 并构建
shell
gitm combine -d -b
# or
gitm combine -d --build all
# or
gitm cb -d -b gitmars
  1. 合并 bugfix/20001 分支到 alpha 和 prod
shell
gitm combine bugfix 20001 -pd
# or
gitm cb bugfix 20001 -pd
# or
gitm cb 20001 -d
  1. bugfix 分支特殊情况需要合并到 release 时,传入--as-feature
shell
gitm combine bugfix 20001 -p --as-feature
# or
gitm cb -p --as-feature
  1. support 分支提交 prod 时会主动同步 bugfix 分支和 release 分支,传入--no-bugfix 不同步到 bugfix
shell
gitm combine support 20001 -pd --no-bugfix
# or
gitm cb -pd --no-bugfix
  1. 传入其他构建参数
shell
gitm combine -b --data '{"app_id":"xxxxxx"}'
  1. 批量选择feature分支进行合并
shell
# 输入指令并按提示选择要合并的分支
gitm cb feature -d

gitm end

短指令:gitm ed

v2.9.6 版本开始,end指令智能判断是否需要合并代码,不传--no-combine时,不需要合并的时候不会发起合并操作
v2.11.0 新增--description传参
v7.0.0 开始支持批量结束分支

任务完成,合并并删除分支,这个操作会把 20001 这个分支代码合并到 bug 分支并删除 20001 分支(远程的 20001 分支也会同步删除)

  • 使用:gitm end [type] [name] [--description [description]] [--no-combine] [--as-feature]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringfeature/bugfix/support当前分支类型
name分支名称String-当前分支名称
  • 传值:
名称简写说明类型可选值传值必填默认
--no-combine不合并主干分支(请确保分支已经上线)Boolean--false
--as-featurebugfix 类型的分支合并到 releaseBoolean--false
--description本次提交的原因描述String-''
  • 示例:
  1. 结束 bugfix/20001 分支
shell
gitm end bugfix 20001
# or
gitm ed bugfix 20001
  1. 结束当前分支
shell
gitm end
# or
gitm ed
# 结束但不合并代码
gitm end --no-combine
# 以feature方式合并
gitm end --as-feature
  1. 批量选择feature分支进行清理
shell
# 输入指令并按提示选择要清理的分支
gitm end feature

gitm update

短指令:gitm up

把 bug 分支的最新代码同步到 20001 分支上(--use-rebase 使用 rebase 方法合并,默认 false)

  • 使用:gitm update [type] [name] [--use-merge] [--use-rebase] [-a --all] [-f --force]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringfeature/bugfix/support当前分支类型
name分支名称String-当前分支名称
  • 传值:
名称简写说明类型可选值传值必填默认
--use-merge是否使用 merge 方式更新代码(准备弃用)Boolean--true
--use-rebase是否使用 rebase 方式更新代码Boolean--false
--all-a是否更新本地所有开发分支Boolean--false
--force-f是否强制发起合并请求Boolean--false
  • 示例:
  1. 升级 bugfix/20001 分支
shell
gitm update bugfix 20001
# or
gitm up bugfix 20001
  1. 使用 rebase 方法升级当前分支
shell
gitm update --use-rebase
# or
gitm up --use-rebase
  1. 升级本地所有开发分支
shell
gitm update --all
# or
gitm up -a
  1. 升级本地所有 feature 分支
shell
gitm update feature --all
# or
gitm up feature -a

gitm continue

短指令:gitm ct

继续未完成的操作

  • 使用:gitm continue
  • 示例:
  • 传值:
名称简写说明类型可选值传值必填默认
--list-l查看未完成的指令列表Boolean--
  1. 继续未完成的操作
shell
gitm continue
# or
gitm ct
  1. 查看未完成的指令列表
shell
gitm continue --list
# or
gitm ct -l

效率

gitm copy

短指令:gitm cp

v4.0.0 重构指令,改造成自选提交记录的方式
v7.1.0 增加--push传值,是否在copy之后推送目标分支到远程

复制当前分支上的提交记录到目标分支

  • 使用:gitm copy [commitid...] 或者 gitm copy [--lastet [lastet]] [--limit [limit]] [--no-merges] [-p -push]
  • 参数:
参数说明类型可选值必填默认
commitid需要 copy 的 commitID,可传入多个,空格隔开String--
  • 传值:
名称简写说明类型可选值传值必填默认
--no-merge-排除 merge 记录Boolean-false
--lastet-查询在某个时间之后的日志,填写格式:10s/2m/2h/3d/4M/5yString-'7d'
--limit-最多查询的日志条数Number-20
--push-p推送目标分支到远程boolean-false
  • 示例:
  1. 不传 commitid,筛选需要展示的日志(默认显示 20 条)
shell
gitm copy --lastet 7d --limit 100
# or
gitm cp --lastet 7d --limit 100
  1. 传入单个或者多个 commitID
shell
# 形式:gitm copy [commitid...]
gitm copy xxxxxx xxxxxx
# or
gitm cp xxxxxx

gitm build

短指令:gitm bd

v5.3.0 增加data传值,支持传入额外的参数
v6.2.0 新增--confirm 参数
v7.0.0 版本调整为支持选择参数的形式,project参数取消必填限制

该指令用于发起 Jenkins 构建,project 必传,app 名称可传入 all

  • 使用:gitm build [project] [-e --env [env]] [-a --app [app]] [-d --data <data>] [-c --confirm]
  • 参数:
参数说明类型可选值必填默认
project需要构建的项目,不传时,取git地址上的项目名称String--
  • 传值:
名称简写说明类型可选值传值必填默认
--env-e要构建的环境Stringdev/prod/bug-
--app-a需要构建的子项目String--
--data-d需要传输的其他数据,传入JSON字符串String-'{}'
--confirm-c确认开始,为 true 时不显示确认框Boolean-false
  • 示例:
  1. 构建 gitmars 的 app 应用
shell
gitm build gitmars --env dev --app app
  1. 自选参数形式
shell
gitm build

gitm build-mp

短指令:gitm bdm

v7.0.0 版本新增
v7.4.0 增加生成版本类型的选择环节,增加输入baseInfo

该指令用于发起 Jenkins 构建小程序

  • 使用:gitm build-mp [project] [-e --env [env]] [--api-env [apiEnv]] [-mp --miniprogram [miniprogram]] [-des --description [description]] [-a --app [app]] [-d --data <data>] [-c --confirm]
  • 参数:
参数说明类型可选值必填默认
project需要构建的项目,不传时,取git地址上的项目名称String--
  • 传值:
名称简写说明类型可选值传值必填默认
--env-e要构建的环境Stringdev/prod/bug-
--api-env要构建的API环境Stringalpha/tag/release/production-
--miniprogram-mp生成体验版小程序String--
--description-des版本描述String--
--app-a需要构建的子项目Stringweapp/alipay/tt/dd/swan-
--data-d需要传输的其他数据,传入JSON字符串String-'{}'
--confirm-c确认开始,为 true 时不显示确认框Boolean-false
  • 示例:
  1. 构建 gitmars 的 app 应用
shell
gitm build-mp gitmars --env dev --app weapp
  1. 自选参数形式
shell
gitm build-mp

gitm miniprogram

短指令:gitm mp

v7.0.0 版本新增

该指令用于操作定制化小程序

  • 使用:gitm miniprogram [miniprogram] [-k --keyword [keyword]]
  • 参数:
参数说明类型可选值必填默认
miniprogram小程序AppID,或者输入auth获取授权码String-auth | String-
  • 传值:
名称简写说明类型可选值传值必填默认
--keyword-k小程序名称,用于模糊搜索String--
  • 示例:
  1. 获取授权码
shell
gitm miniprogram auth
# or
gitm mp
  1. 选择小程序进行操作
shell
gitm miniprogram
# or
gitm miniprogram --keyword 测试
  1. 输入小程序AppID进行操作
shell
gitm miniprogram xxxxxx

gitm branch

短指令:gitm bh

v2.14.2 新增--exclude 和--include 传值

提供分支搜索和删除功能

  • 使用:gitm branch [-k --key] [-t --type] [--exclude [exclude]] [--include [include]] [-r --remote] 或者 gitm branch [-d --delete [name]] [-D --forcedelete [name]] 或者 gitm branch [-u --upstream [upstream]]
  • 传值:
名称简写说明类型可选值传值必填默认
--key-k模糊匹配关键词String--
--exclude排除的分支名,支持正则或字符串String/RegExp--
--include筛选符合条件的分支,支持正则或字符串String/RegExp--
--type-t分支类型,默认查询全部Stringbugfix/feature/support-
--remote-r是否查询远程分支Boolean-false
--delete-d删除本地分支String--
--forcedelete-D强制删除本地分支String--
--upstream-u传入分支名称可绑定分支,不传分支名称则取消绑定String-''
  • 示例:
  1. 查询本地 feature 功能分支
shell
# 形式:gitm branch [-k --key] [-t --type] [--exclude [exclude]] [--include [include]] [-r --remote]
gitm branch --key bug001 --exclude="saqqdy$" --include="wu$" --remote --type feature
# or
gitm bh -k bug001 --exclude="saqqdy$" --include="wu$" -r -t feature
  1. 删除本地分支
shell
# 形式:gitm branch [-d --delete] [-D --forcedelete]
gitm branch -D bugfix/bug001
# or
gitm bh -D bugfix/bug001
  1. 删除本地和远程分支
shell
# 形式:gitm branch [-d --delete] [-D --forcedelete] [-r --remote]
gitm branch -D bugfix/bug001 --remote
# or
gitm bh -D bugfix/bug001 -r
  1. 设置当前分支与远程 feature/1000 分支关联
shell
# 形式:gitm branch [-u --upstream [upstream]]
gitm branch -u feature/1000
  1. 取消当前分支与远程分支的关联
shell
gitm branch -u

gitm revert

短指令:gitm rt

撤销当前分支的某条提交记录,如果需要撤销一条 merge 记录,需要传入撤销方式,1 = 保留当前分支代码;2 = 保留传入代码

  • 使用:gitm revert [commitid] [-m --mode [mode]] 或者 gitm revert [-n --number] [-m --mode [mode]]
  • 参数:
参数说明类型可选值必填默认
commitid要撤回的 idString--
  • 传值:
名称简写说明类型可选值传值必填默认
--number-n撤回倒数 N 条记录,使用时不要传入 commitIDNumber-false
--mode-m撤回 merge 记录时需要保留哪一方的代码,1=保留当前分支,2=保留传入分支Number--
  • 示例:
  1. 撤销最后一次提交(或者撤销倒数第 n 次提交)
shell
# 形式:gitm revert [-n --number] [-m --mode [mode]]
gitm revert -n 3
# or
gitm rt -n 3
  1. 撤销某条提交 id
shell
# 形式:gitm revert [commitid] [-m --mode [mode]]
gitm revert xxxxxx --mode 1
# or
gitm rt xxxxxx -m 1

gitm undo

短指令:gitm ud

v2.15.0 新增指令。新增--no-merges --limit --lastet --calc --calcAll传参,移除--branch传参

撤销当前分支的某条提交记录,或者撤销某条分支的多条合并记录,如果需要撤销一条 merge 记录,需要传入撤销方式,1 = 保留当前分支代码;2 = 保留传入代码

  • 使用:gitm undo [commitid...] [-m --mode [mode]] 或者 gitm undo [--lastet [lastet]] [--limit [limit]] [-m --mode [mode]] [--no-merges] 或者 gitm undo [--calc] [--calcAll]
  • 参数:
参数说明类型可选值必填默认
commitid要撤回的 id,多条 id 空格隔开String--
  • 传值:
名称简写说明类型可选值传值必填默认
--mode-m撤回 merge 记录时需要保留哪一方的代码,1=保留当前分支,2=保留传入分支Number--
--no-merge-排除 merge 记录Boolean-false
--lastet-查询在某个时间之后的日志,填写格式:10s/2m/2h/3d/4M/5yString-'7d'
--limit-最多查询的日志条数Number-20
--calc-清理当前分支撤销失败的记录Boolean-false
--calcAll-清理所有分支撤销失败的记录Boolean-false
  • 示例:
  1. 不传 commitid,显示 log 列表选择要撤销的 commit,如果是 merge 记录,保留当前分支代码
shell
# 形式:gitm undo [-m --mode [mode]]
gitm undo -m 1
# or
gitm ud -m 1
  1. 不传 commitid,筛选需要展示的日志(默认显示 20 条)
shell
gitm undo --lastet 7d --limit 100 --mode 1
# or
gitm ud --lastet 7d --limit 100 --mode 1
  1. 传入单个或者多个 commitID
shell
# 形式:gitm undo [commitid...] [-m --mode [mode]]
gitm undo xxxxxx xxxxxx --mode 1
# or
gitm ud xxxxxx -m 1
  1. 清理当前分支撤销失败的记录
shell
# 形式:gitm undo [--calc] [--calcAll]
gitm undo --calc
# or
gitm ud --calc

gitm redo

短指令:gitm rd

v2.15.0 新增指令

重做当前分支的某条提交记录,或者重做某条分支的多条合并记录,如果需要重做一条 merge 记录,需要传入重做方式,1 = 保留当前分支代码;2 = 保留传入代码

  • 使用:gitm redo [commitid...] [-m --mode [mode]] 或者 gitm redo [-m --mode [mode]]
  • 参数:
参数说明类型可选值必填默认
commitid要撤回的 id,多条 id 空格隔开String--
  • 传值:
名称简写说明类型可选值传值必填默认
--mode-m撤回 merge 记录时需要保留哪一方的代码,1=保留当前分支,2=保留传入分支Number--
  • 示例:
  1. 传入分支名称
shell
# 形式:gitm redo [commitid...] [-m --mode [mode]]
gitm redo xxxxxx xxxxxx --mode 1
# or
gitm rd xxxxxx xxxxxx -m 1
  1. 传入单个或者多个 commitID
shell
# 形式:gitm redo [-m --mode [mode]]
gitm redo --mode 1
# or
gitm rd -m 1

gitm save

短指令:gitm sv

暂存当前分支代码

  • 使用:gitm save [message] [-f --force]
  • 参数:
参数说明类型可选值必填默认
messagestash 的标记信息,默认会存入当前分支名称作为暂存标记信息String-当前分支的名称
  • 传值:
名称简写说明类型可选值传值必填默认
--force-f是否需要把没有加入版本的文件执行 add 之后暂存起来Boolean-false
  • 示例:
  1. 简单使用
shell
gitm save
# or
gitm sv
  1. 暂存没有加入版本控制的文件
shell
gitm save --force
# or
gitm save -f
  1. 设置自定义暂存信息,方便取出
shell
gitm save feature/1000
# or
gitm save "test login"

gitm get

短指令:gitm gt

恢复暂存代码

  • 使用:gitm get [message] [index] [-k --keep]
  • 参数:
参数说明类型可选值必填默认
messagestash 的标记信息,默认会存入当前分支名称作为暂存标记信息String-当前分支的名称
index需要恢复的序号,存在多条记录时默认恢复最近的一条记录Number-0
  • 传值:
名称简写说明类型可选值传值必填默认
--keep-k是否需要保留暂存区的记录Boolean-false
  • 示例:
  1. 简单使用
shell
gitm get
# or
gitm gt
  1. 恢复 feature/1000 分支的暂存记录到当前分支,取第 2 条记录(index 不传默认取第 1 条记录:0)
shell
gitm get feature/1000 1
  1. 恢复时不删除暂存区数据
shell
gitm get --keep
# or
gitm get -k
  1. 恢复暂存信息为“test login”的暂存记录
shell
gitm get "test login"

gitm cleanbranch

短指令:gitm clb

v2.13.0 新增
v2.13.1 新增--list 参数
v2.13.4 新增--confirm 参数
v2.13.6 新增 branches,新增--target
v2.13.9 --except 改成--exclude,用法不变;新增--include 传参;新增--key 传参
v4.0.0 新增--strictly 传参

清理合并过的功能分支

  • 使用:gitm cleanbranch [branches...] [-l --list [list]] [-k --key [keyword]] [--exclude [exclude]] [--include [include]] [-t --type [type]] [--target [target]] [-r --remote] [-c --confirm] [-s --strictly]
  • 参数:
参数说明类型可选值必填默认
branches指定清理分支String--
  • 传值:
名称简写说明类型可选值传值必填默认
--list-l显示符合条件的分支列表Boolean-false
--key-k查询分支的关键词String--
--exclude排除的分支名,支持正则或字符串String/RegExp--
--include筛选符合条件的分支,支持正则或字符串String/RegExp--
--type-t分支类型,支持:feature/bugfix/supportString--
--target需要检测是否合过的目标分支名,不传默认是 develop 和 releaseString--
--remote-r是否清理远程分支,默认清理本地分支Boolean-false
--strictly-s是否开启严格模式Boolean-false
--confirm-c确认开始,为 true 时不显示确认框Boolean-false
  • 示例:
  1. 清理前查看符合条件的分支列表
shell
gitm cleanbranch --remote --exclude "saqqdy$" --include "[a-z]+$" --key "wu" --list
# or
gitm cleanbranch -r --exclude "saqqdy$" --include "[a-z]+$" -k "wu" -l
  1. 清理远程所有功能分支
shell
gitm cleanbranch --remote
# or
gitm cleanbranch -r
  1. 清理远程所有功能分支,除了 exclude 匹配的分支
shell
gitm cleanbranch --remote --exclude "saqqdy$"
# or
gitm cleanbranch -r --exclude "saqqdy$"
  1. 清理本地所有 feature 分支
shell
gitm cleanbranch --type feature
# or
gitm cleanbranch -t feature
  1. 清理指定分支:feature/10000feature/10001
shell
gitm cleanbranch feature/10000 feature/10001
  1. 需要检测是否合过的目标分支名改为只需要合过release分支即可
shell
gitm cleanbranch --target release
  1. 不使用严格模式进行判断
shell
gitm cleanbranch --target release --strictly

gitm log

v1.4.0 新增
v2.15.0 新增--no-merges传参
v2.15.3 新增--json传值,是否以 json 格式输出日志,默认表格方式

查询日志

  • 使用:gitm log [branch] [--lastet [lastet]] [--limit [limit]] [--no-merges] [--json]
  • 参数:
参数说明类型可选值必填默认
branch分支名称String--
- 传值:
名称简写说明类型可选值传值必填默认
--lastet-查询在某个时间之后的日志,填写格式:10s/2m/2h/3d/4M/5yString-'7d'
--limit-最多查询的日志条数Number-20
--no-merge-排除 merge 记录Boolean-false
--json-是否以 json 格式输出日志,默认表格方式Boolean-false
  • 示例:
  1. 查询最近 7 天内的日志,最多 50 条
shell
gitm log --latest 7d --limit 50
  1. 排除 merge 记录
shell
gitm log --no-merges --limit 50
  1. 查看 dev 分支的 log
shell
gitm log dev
  1. 以 json 格式查看日志
shell
gitm log --json

gitm hook

1.4.0 新增

发布操作

  • 使用:gitm hook [command] [args...] [--no-verify] [--lastet [lastet]] [--limit [limit]] [-t --type <type>] [--branch [branch]]
  • 参数:
参数说明类型可选值必填默认
command命令名称String--
  • 传值:
名称简写说明类型可选值传值必填默认
--no-verify-是否需要跳过校验权限Boolean-false
--lastet-查询在某个时间之后的日志,填写格式:10s/2m/2h/3d/4M/5yBoolean--
--limit-最多查询的日志条数Number-20
--type-t检测类型Number-''
--branch-要查询的分支String-''

gitm run

1.4.0 新增

TIP

内部方法,仅支持程序内部使用

run 指令是 gitmars hook 里面执行的内部指令,用来执行钩子方法

  • 使用:gitm run <command> [args...]
  • 参数:
参数说明类型可选值必填默认
command钩子名称String-
args参数列表String-

gitm upgrade

短指令:gitm ug

升级 gitmars 版本,可输入 version 指定版本,选填,默认安装最新版

  • 使用:gitm upgrade [version] [-m --mirror] [-c --client [client]] [-r --registry <registry>]
  • 参数:
参数说明类型可选值必填默认
version要升级的版本号Stringalphabetareleaselitelatestnextx.x.xlatest
  • 传值:
名称简写说明类型可选值传值必填默认
--mirror-m是否使用淘宝镜像升级Boolean-false
--registry-r使用镜像地址String-false
--mirror-m是否使用淘宝镜像升级Boolean-false
  • 示例:
  1. 简单使用
shell
gitm upgrade --mirror
# or
gitm ug -m

gitm clean

清理 gitmars 缓存和本地配置,输入--force 同时清理本地配置文件(慎用)

shell
形式:gitm clean [-f --force]
  • 传值:
名称简写说明类型可选值传值必填默认
--force-f是否清理 gitmars 执行缓存Boolean-false
  • 示例:
shell
gitm clean

gitm approve

短指令:gitm ap

v2.16.0 新增
v2.16.4 移除--postmsg,新增'--quiet'

处理远程合并请求

  • 使用:gitm approve [--state [state]] [--quiet]
  • 参数:无
  • 传值:
名称简写说明类型可选值传值必填默认
--state筛选合并请求的状态Stringopened closed merged allopened
--quiet不要推送消息Booleanfalse
  • 示例:
shell
# 输入指令,按照提示操作
gitm approve --quiet

gitm review

短指令:gitm rv

v2.16.0 新增
v2.16.4 移除--postmsg,新增'--quiet'

远程 review 代码

  • 使用:gitm review [--state [state]] [--quiet]
  • 参数:无
  • 传值:
名称简写说明类型可选值传值必填默认
--state筛选合并请求的状态Stringopened closed merged allopened
--quiet不要推送消息Booleanfalse
  • 示例:
shell
# 输入指令,按照提示操作
gitm review --state merged

gitm status

查看当前分支状态

  • 使用:gitm status

  • 参数:无

  • 传值:无

  • 示例:

shell
gitm status

创建本地包软链接,传入 name 时把依赖包软链到本地包,不传 name 时给当前包创建公共软链

  • 使用:gitm link [name]
  • 参数:
参数说明类型可选值必填默认
name包名称String--
  • 示例 1:链接本地的 tool 包
shell
gitm link tool
  • 示例 2:给当前包创建公共软链
shell
gitm link

传入 name 时解除依赖包软链,不传 name 时删除当前包的公共软链

  • 使用:gitm unlink [name]
  • 参数:
参数说明类型可选值必填默认
name包名称String--
  • 示例 1:解除依赖包软链
shell
gitm unlink tool
  • 示例 2:删除当前包的公共软链
shell
gitm unlink

gitm postmsg

推送消息

  • 使用:gitm postmsg <message> [-u --url [url]]
  • 参数:
参数说明类型可选值必填默认
message消息内容String--
  • 传值:
名称简写说明类型可选值传值必填默认
--url-u自定义推送消息地址String--
  • 示例:
  1. 简单使用
shell
gitm postmsg "测试消息"
  1. 自定义推送地址
shell
gitm postmsg "测试消息" --url "https://github.com/"

gitm alias

短指令:无

v2.18.0 新增

安装和移除快捷方式

  • 使用:gitm alias init or gitm alias remove
  • 参数:无
  • 传值:无
  • 示例:
shell
# 安装
gitm alias init
# 移除
gitm alias remove
  • 运用:
  1. gitm 别名使用
shell
# 创建分支
gitm start feature 100001
# or
git mars start feature 100001
# or
git flow start feature 100001
  1. git 快捷方式
名称指令使用说明
unstagereset HEAD --git unstage file1.js移出暂存区
lastlog -1 HEADgit last显示最近一条日志
ststatusgit stgit 状态
cmcommitgit cm -m "xxxx"提交版本
brbranchgit br分支管理
bhbranchgit bh分支管理
ckcheckoutgit ck dev切换到分支
ckbcheckout -bgit ckb dev master创建分支
cpcherry-pickgit cp xxxxxx复制提交记录
pspushgit ps推送代码到远程
plpullgit pl拉取远程代码
plmpull --mergegit plm通过 merge 方式拉取代码
plrpull --rebasegit plr通过 rebase 方式拉代码
fhfetchgit fh检索远程版本
shstashgit sh存入暂存区
shpstash popgit shp取出暂存区文件
shastash applygit sha取出暂存区文件
mgmergegit mg feature/test合并分支
mgnmerge --no-ffgit mgn feature/test通过--no-ff 方式 merge
rsresetgit rs xxxxxx重置
rshreset --hardgit rsh xxxxxx硬重置
rssreset --softgit rss xxxxxx软重置
rbrebasegit rbrebase

管理员

gitm admin create

创建 release、bugfix、support 和 develop 分支

  • 使用:gitm admin create <type>
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringbugfix/release/develop-
  • 示例:

创建 release 分支

shell
gitm admin create release

gitm admin publish

v2.11.0 新增--description传参
v5.3.0 publish增加data传值,支持传入额外的参数

发布操作

  • 使用:gitm admin publish <type> [--description [description]] [-c --combine] [--use-rebase] [-p --prod] [-b --build [build]] [-d --data <data>] [-p --postmsg] [-f --force]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringbugfix/release/support-
  • 传值:
名称简写说明类型可选值传值必填默认
--combine-c是否在合并 release 之后会把 release 同步到 bugfix(仅在合并 release 时可用)Boolean-false
--prod-p发布 bugfix 时,是否需要把 bugfix 合并到 masterBoolean-false
--build-b是否使用淘宝镜像升级Boolean-false
--use-rebase是否使用 rebase 执行合并Boolean-false
--postmsg-p是否需要发送群消息Boolean-false
--description本次提交的原因描述String-''
--force-f是否强制发起合并请求Boolean--false
--data-d需要传输的其他数据,传入JSON字符串String-'{}'
  • 示例:
  1. 合并 release 代码到预发环境
shell
gitm admin publish release
  1. 发布并执行构建
shell
# 构建全部
gitm admin publish release --build
# or
gitm admin publish release -b
# 仅构建app
gitm admin publish release --build app
# or
gitm admin publish release -b app
  1. 发布并执行构建,传入其他构建参数
shell
# 构建全部
gitm admin publish release --build --data '{"app_id":"xxxxxx"}'
# or
gitm admin publish release -b -d '{"app_id":"xxxxxx"}'

gitm admin update

v2.11.0 新增--description传参

更新 release、bugfix、support 分支代码,默认走 merge 方法

  • 使用:gitm admin update <type> [--description [description]] [--use-rebase] [-m --mode [mode]] [-p --postmsg] [-f --force]
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringbugfix/release/support-
  • 传值:
名称简写说明类型可选值传值必填默认
--mode-m出现冲突时,保留传入代码还是保留当前代码;1=采用当前 2=采用传入;默认为 0=手动处理。本参数不可与--use-rebase 同时使用Number0/1/20
--use-rebase是否使用 rebase 执行同步Boolean-false
--postmsg-p是否需要发送群消息Boolean-false
--description本次提交的原因描述String-''
--force-f是否强制发起合并请求Boolean--false
  • 示例:
  1. 更新 bug 分支代码
shell
gitm admin update bugfix -m 2
# or
gitm admin up bugfix -m 2

gitm admin clean

Jenkins 构建清理 git 分支专用,可传入 release、bugfix、develop 分支代码

  • 使用:gitm admin clean <type>
  • 参数:
参数说明类型可选值必填默认
type分支类型Stringbugfix/release/support/master-
  • 示例:

清理分支

shell
gitm admin clean bugfix

其他

gitm permission

检测是否骚操作

  • 使用:gitm permission
  • 示例:

gitm version

查看 gitmars 版本号

  • 使用:gitm --version
  • 示例:
shell
gitm --version
# or
gitm -v

基于 GPL-3.0 许可发布