All Projects β†’ SystangoTechnologies β†’ Commit Message Lint

SystangoTechnologies / Commit Message Lint

Licence: mit
Github app to validate commit message on a pull request

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Commit Message Lint

Commitlint
πŸ““ Lint commit messages
Stars: ✭ 9,847 (+11218.39%)
Mutual labels:  lint, conventions
Update
Update is a new developer framework and CLI for automating updates of any kind in code projects. If you know how to use assemble, generate or verb, you'll know how to use update.
Stars: ✭ 106 (+21.84%)
Mutual labels:  lint, conventions
yamburger
YAML syntax got you down? That's a YAMBURGER!
Stars: ✭ 32 (-63.22%)
Mutual labels:  lint, github-app
Swift Style Guide
Swift language style guide & coding conventions followed by Xmartlabs.
Stars: ✭ 36 (-58.62%)
Mutual labels:  conventions
Elisp Lint
Basic linting for Emacs Lisp
Stars: ✭ 45 (-48.28%)
Mutual labels:  lint
Version Checker Gradle Lint
Warning on new versions available even when using Kotlin-DSL plugin.
Stars: ✭ 68 (-21.84%)
Mutual labels:  lint
Conventional
A suite of convention specifications for enforcing type and style conventions in your codebase
Stars: ✭ 85 (-2.3%)
Mutual labels:  conventions
Boomper
Bump version numbers in files whenever new releases are published to GitHub.
Stars: ✭ 33 (-62.07%)
Mutual labels:  github-app
Pytorch Project Template
Deep Learning project template for PyTorch (Distributed Learning is supported)
Stars: ✭ 76 (-12.64%)
Mutual labels:  lint
Starhub
All about your Github account, public and private activity, watch stars, followers and much more.
Stars: ✭ 60 (-31.03%)
Mutual labels:  github-app
Linter
a GitHub App that lints and fixes code in Pull Requests
Stars: ✭ 54 (-37.93%)
Mutual labels:  github-app
Lithium
li₃ is the fast, flexible and most RAD development framework for PHP
Stars: ✭ 1,176 (+1251.72%)
Mutual labels:  conventions
Mutest
fork of mutant with inline disable comments and a few different mutations.
Stars: ✭ 75 (-13.79%)
Mutual labels:  lint
Stale
A GitHub App built with Probot that closes abandoned Issues and Pull Requests after a period of inactivity.
Stars: ✭ 1,070 (+1129.89%)
Mutual labels:  github-app
Rmlint
Extremely fast tool to remove duplicates and other lint from your filesystem
Stars: ✭ 996 (+1044.83%)
Mutual labels:  lint
Mini Github
GitHub WeChat Mini Program
Stars: ✭ 1,216 (+1297.7%)
Mutual labels:  github-app
Gitmug
The GitHub app for minimalists.
Stars: ✭ 34 (-60.92%)
Mutual labels:  github-app
Meowcop
A RuboCop configuration focusing Lint. Recommended by Sider
Stars: ✭ 51 (-41.38%)
Mutual labels:  lint
Qtools
QTools collection of open source tools for embedded systems development on Windows, Linux and MacOS
Stars: ✭ 64 (-26.44%)
Mutual labels:  lint
Flutter Gitconnect
A Github mobile app built in flutter
Stars: ✭ 87 (+0%)
Mutual labels:  github-app

Commit Message Lint

Github app to validate commit message and pull request title on a pull request

Description

This app runs a format check on commit messages and pull request title on the creation of a pull request.

For example, let's say you specify that a commit message should have a format DDD:message. Here D stand for numeric digit. The app checks if the commit message follows this format. If all the commit messages follow this format, the check returns successful, otherwise failure. The reviewer can then decide if they want to go ahead with the code merge.

App URL

https://github.com/apps/commit-message-lint

Installation

Use the Github's app section or above URL to install the app to your repository.

Configuration

You would need to add a configuration folder named .github at the root of your repository. The folder should contain a file named config.yml. This file will serve as the configuration and the contents of that file will be:

PR_TITLE_REGEX: <PR Title Regex>
COMMIT_MESSAGE_REGEX: <Commit Message Regex>
OUTPUT_TITLE_FAIL: Message validation failed!!!
OUTPUT_TITLE_SUCCESS: Message validation passed!!!
VALID_COMMIT_MESSAGE: Commit messages are valid
INVALID_COMMIT_MESSAGE: Commit messages are invalid
SINGLE_OTHER_INVALID_MESSAGE: other message is invalid
MULTIPLE_OTHER_INVALID_MESSAGE: other messages are invalid
VALID_PULL_REQUEST_MESSAGE: Pull request title is valid
INVALID_PULL_REQUEST_MESSAGE: Pull request title is invalid

Usage

Go to the checks section on your PR to see the result of the check run performed by the app. It will show you the result as well as the commit messages which failed.

Local setup

Step 1. Clone the application. Step 2. Run npm install Step 3. Create .env file in the root directory and set the following environment variables in .env file :

    APP_ID - Github app id (get from app settings page)
    WEBHOOK_PROXY_URL - URL of the hosted application, use ngrok for local
    WEBHOOK_SECRET - webhook secret for security, same as the one set in github app settings
    PRIVATE_KEY - Get from github app settings page
    LOG_LEVEL - Log level
    REGEX_CONFIG_FILE_NAME - config file which contains repo config, keep it as config.yml
    GITHUB_BASE_PATH - Github API path, keep it as https://api.github.com

Note : Take values of APP_ID, WEBHOOK_PROXY_URL, WEBHOOK_SECRET, PRIVATE_KEY from https://github.com/settings/apps/commit-message-lint

Step 4. Run npm start to start the application

Resources

Purchase Flow

Identifying and authorizing users for GitHub Apps

Integrating with the GitHub Marketplace API

Contributors

Anshul Soni

Sumit Singhal

Vikas Patidar

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].