t-comm
Version:
专业、稳定、纯粹的工具库
53 lines (52 loc) • 1.56 kB
TypeScript
/**
* 每日合并
* 1. 获取昨天有活跃的分支
* 2. 对于每个分支,进行合并并推送
* - 清理 Git 环境
* - 切到主分支,并拉最新代码
* - 切到当前分支,拉最新代码
* - 尝试执行 git merge
* - 对比 merge 前后的 commit 信息是否相同,作为判断 merge 是否成功的依据
* 3. 发送机器人消息
*
*
* @export
* @async
* @param {object} param0 参数
* @param {string} param0.webhookUrl 机器人地址
* @param {string} param0.appName 项目名称
* @param {string} param0.devRoot 项目根路径
* @param {string} param0.baseUrl 基础请求 url
* @param {string} param0.repoName 仓库名称
* @param {string} param0.privateToken 密钥
* @param {boolean} [param0.isDryRun=false] 是否演练
* @param {string} [param0.mainBranch='develop'] 主分支
* @param {Regexp} [param0.whiteBranchReg=/^release\|develop\|hotfix\\/.+$/] 不处理的分支正则
* @returns {*}
* @example
*
* ```ts
* dailyMerge({
* webhookUrl: 'xx',
* appName: 'xx',
* devRoot: 'xx',
*
* baseUrl: 'xx',
* repoName: 'xx',
* privateToken: 'xx',
*
* isDryRun: false,
* })
* ```
*/
export declare function dailyMerge({ webhookUrl, appName, devRoot, baseUrl, repoName, privateToken, isDryRun, mainBranch, whiteBranchReg, }: {
webhookUrl: string;
appName: string;
devRoot: string;
baseUrl: string;
repoName: string;
privateToken: string;
isDryRun?: boolean;
mainBranch?: string;
whiteBranchReg?: RegExp;
}): Promise<void>;