dgiot/push.js

66 lines
2.2 KiB
JavaScript
Raw Normal View History

#!/usr/bin/env node
2021-09-18 15:40:45 +08:00
// install: yarn add rimraf chalk shelljs inquirer
// use: node push.js or ./push.js
2021-09-18 15:40:45 +08:00
const logs = console.log;
const chalk = require("chalk");
const shell = require("shelljs");
const inquirer = require("inquirer");
let commitType,
2021-09-18 15:40:45 +08:00
commitMsg = "";
function funCommitType() {
2021-09-18 15:40:45 +08:00
const promptList = [
{
type: "list",
message: "Please select the commit type:",
name: "env",
choices: [
{ value: "feat", name: "feat: 新功能" },
{ value: "fix", name: "fix: 修复bug" },
{ value: "style", name: "style: 代码格式(空格、分号等)" },
{ value: "refactor", name: "refactor: 重构非feat、非fix" },
{ value: "perf", name: "perf: 提高性能" },
{ value: "test", name: "test: 添加缺少的测试" },
{ value: "docs", name: "docs: 文档修改" },
{ value: "chore", name: "chore: 杂务(对生成过程或辅助工具和库(如文档生成)的更改)" },
{ value: "revert", name: "revert: 还原到提交" },
{ value: "WIP", name: "WIP: 进行中的工作" },
{ value: "workflow", name: "workflow: 工作流相关文件修改" },
{ value: "build", name: "build: 构建过程或辅助工具的变动" },
{ value: "ci", name: "ci: 修改项目持续集成流程" },
{ value: "release", name: "release: 发布新版本" }
]
}
];
inquirer.prompt(promptList).then(({ env }) => {
commitType = env;
funCommitMessage();
});
}
2021-09-18 15:14:21 +08:00
function funCommitMessage() {
2021-09-18 15:40:45 +08:00
const promptList = [
{
type: "input",
message: "Please enter and submit message information:",
name: "msg"
}
];
inquirer.prompt(promptList).then(({ msg }) => {
commitMsg = msg;
funShell();
});
}
2021-09-18 15:14:21 +08:00
function funShell() {
2021-09-18 15:40:45 +08:00
shell.exec("git pull");
logs(chalk.green("changelog start"));
shell.exec("rimraf CHANGELOG.md && conventional-changelog -p angular -i CHANGELOG.md -r 0 -s");
logs(chalk.green("changelog end"));
shell.exec("git add -A .");
shell.exec(`git commit -m "${commitType}: ${commitMsg}"`);
logs(chalk.blue(`message: "${commitType}: ${commitMsg}"`));
shell.exec("git push");
}
2021-09-09 16:12:52 +08:00
2021-09-18 15:40:45 +08:00
funCommitType();