用inquirer规范commit提交格式

1、inquirer介绍

2、commit格式规范

3、安装:

apt-get install python3-pip

pip3 install inquirer

配置代码:

#!/bin/python3

import inquirer
import sys
from string import Template
import subprocess

def number_validation(answers, current):
  return int(current)

def empty_validation(answers, current):
  return bool(current)

def no_validation(answers, current):
  return True

def addList(name, message, list):
  return inquirer.List(name, message, list)

def addText(name, message, valid):
  return inquirer.Text(name, message, validate=valid)

def addCheck(_name, _message, _choices):
  return inquirer.Checkbox(_name, message=_message, choices=_choices)

questions = [
  addCheck("action", "选择非选项(空格选择,回车跳过)", ['Bug', 'Issue', 'Task'])
]

optinalAnswers = inquirer.prompt(questions)

questions = [
  addList('action', "select you action", ['fix', 'feat', 'refactor', 'docs', 'chore', 'style', 'pref', 'test']),
  addText("module", "input module name", no_validation),
  addText('title', "input title", empty_validation),
  addText('description', "input description", empty_validation),
  addText("log", "input log", empty_validation),
]

optinal = {
  "Bug": addText("bug", "input bug id", empty_validation),
  "Issue": addText("issue", "input issue id", empty_validation),
  "Task": addText("task", "input task id", empty_validation),
}

optinalMap = {
  "Bug": "bug",
  "Issue": "issue",
  "Task": "task",
}

for action in optinalAnswers["action"]:
  questions.append(optinal[action])

answers = inquirer.prompt(questions)

template = '${action}'

if answers["module"]:
  template += '(${module})'

template += ': ${title}\n\nDescription: ${description}\n\nLog: ${log}\n'

for action in optinalAnswers["action"]:
  template += action + ": ${" + optinalMap[action] + "}\n"

subprocess.run(["git", "commit", "-m", Template(template).substitute(answers)])

将上述代码内容保存到/usr/bin/git-inquirer,赋予可执行权限,然后输入git-inquirer即可生成一个交互式窗口来规范commit输入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值