Skip to content

引入

ts
import { dailyMerge } from 't-comm';

// 不支持 tree-shaking 的项目
import { dailyMerge} from 't-comm/lib/daily-merge/index';

// 只支持 ESM 的项目
import { dailyMerge} from 't-comm/es/daily-merge/index';

dailyMerge(param0)

描述

每日合并

  1. 获取昨天有活跃的分支
  2. 对于每个分支,进行合并并推送
    • 清理 Git 环境
    • 切到主分支,并拉最新代码
    • 切到当前分支,拉最新代码
    • 尝试执行 git merge
    • 对比 merge 前后的 commit 信息是否相同,作为判断 merge 是否成功的依据
  3. 发送机器人消息

参数

参数名类型默认值描述
param0object

参数

param0.webhookUrlstring

机器人地址

param0.appNamestring

项目名称

param0.devRootstring

项目根路径

param0.baseUrlstring

基础请求 url

param0.repoNamestring

仓库名称

param0.privateTokenstring

密钥

[param0.isDryRun]booleanfalse

是否演练

[param0.mainBranch]string"'develop'"

主分支

[param0.whiteBranchReg]Regexp/^release|develop|hotfix\/.+$/

不处理的分支正则

示例

ts
dailyMerge({
  webhookUrl: 'xx',
  appName: 'xx',
  devRoot: 'xx',

  baseUrl: 'xx',
  repoName: 'xx',
  privateToken: 'xx',

  isDryRun: false,
})