1

add: import code

портирован код из старого репозитория https://di9.ru/git/Voomra/Conventional-Commits
This commit is contained in:
2025-07-30 18:44:50 +03:00
commit af99bebf91
16 changed files with 575 additions and 0 deletions

51
README.MD Normal file
View File

@@ -0,0 +1,51 @@
# Commit-lint tool
Программа на Go для проверки описаний коммитов на соответствие [соглашению о коммитах](https://di9.ru/git/Conventional-Commits/specification/src/branch/master/CONVENTIONAL_COMMITS.MD).
## Использование
Добавить git hook `commit-msg`:
```shell
#!/usr/bin/env sh
commitlint -commitMessage="$1" -config="commitlint.json"
```
| Параметр | Описание | По-умолчанию |
|:-----------------|:--------------------------------|-----------------------|
| `-commitMessage` | Путь до файла сообщения коммита | `.git/COMMIT_EDITMSG` |
| `-config` | Путь до файла настроек | `commitlint.json` |
### Настройка
Настройка по-умолчанию считывается из файла `commitlint.json`, который находится в корне репозитория
```json
{
"types": [ "build", "docs", "pref", "refac", "revert", "style", "test" ],
"contexts": [ "git", "ide" ],
"excludes": [ "^wip$" ],
"maxLengthLine": 72
}
```
| Настройка | Описание |
|:----------------|:------------------------------------------|
| `types` | Перечисление допустимых типов коммитов |
| `contexts` | Перечисление допустимых контекстов |
| `excludes` | Перечисление шаблонов для исключений |
| `maxLengthLine` | Максимальная длинна первой строки коммита |
## Сборка
Для Linux:
```shell
make build-linux
```
Для Windows:
```shell
make build-windows
```