igcommit - Git pre-receive hook to check commits and code style

  •        269

It is exhausting to edit files again and again to have a consistent style. This project provides a Git pre-receive hook to validate pushed commits on the Git server side. The hook avoids all issues by rejecting any commit not matching the rules to get in to the repository in the first place. The pre-receive hook runs some checks on commits on its own, and searches for programming language specific syntax checkers on the PATH of the server to check changed files with them. The process is pretty fast, because only the added and modified files on the pushed commits are passed to the syntax checkers, also in parallel. It wouldn't slow you down unless your commits are touching hundreds of files.

https://github.com/innogames/igcommit

Tags
Implementation
License
Platform

   




Related Projects

vim-flake8 - Flake8 plugin for Vim

  •    VimL

vim-flake8 is a Vim plugin that runs the currently open file through Flake8, a static syntax and style checker for Python source code. It supersedes both vim-pyflakes and vim-pep8.Flake8 is a wrapper around PyFlakes (static syntax checker), PEP8 (style checker) and Ned's MacCabe script (complexity checker).

husky - :dog: Git hooks made easy

  •    Javascript

By default, husky expects your project's package.json and your .git directory to be at the same level. It can be configured to support monorepos or sub-directories.Check documentation for more.

pre-commit - Automatically installs a git pre-commit script in your git repository which runs your `npm test` on pre-commit

  •    Javascript

pre-commit is a pre-commit hook installer for git. It will ensure that your npm test (or other specified scripts) passes before you can commit your changes. This all conveniently configured in your package.json. But don't worry, you can still force a commit by telling git to skip the pre-commit hooks by simply committing using --no-verify.


puppet-git-hooks - Git client and server side hooks for puppet development

  •    Shell

Git hooks to assist puppet module development. Client side hooks allow for various checks before commits are staged. Server side hooks are provided for infrastructural reinforcement of various standardization compliances. In your git repository you can symlink the pre-commit file from this repository to the .git/hooks/pre-commit of your repository you want to implement this feature.

Flake8Lint - Sublime Text plugin for lint Python files

  •    Python

⚠️ IMPORTANT NOTE: unfortunately, I have no time now to maintain this project. I am really sorry. Please, contact me if you want to be a maintaner or use another plugins like SublimeLinter-flake8. Python Flake8 Lint is a Sublime Text 2/3 plugin for check Python files against some of the style conventions in PEP8, pydocstyle, PyFlakes, mccabe, pep8-naming, flake8-debugger and flake8-import-order.

gitlab-shell - Replacement for gitolite

  •    Ruby

GitLab Shell handles git commands for GitLab and modifies the list of authorized keys. GitLab Shell is not a Unix shell nor a replacement for Bash or Zsh. Maybe you wonder why in the case of git push over http(s) the Rails app doesn't handle authentication before delegating to GitLab Shell. This is because GitLab Rails doesn't have the logic to interpret git push commands. The idea is to have these interpretation code in only one place and this is GitLab Shell so we can reuse it for ssh access. Actually GitLab Shell executes all git push commands without checking authorizations and relies on the pre-receive hooks to check authorizations. When you do a git pull command the authorizations are checked before executing the commands (either in GitLab Rails or GitLab Shell with an API call to GitLab Rails). The authorization checks for git pull are much simpler since you only have to check if a user can access the repo (no need to check branch permissions).

atom-beautify - :lipstick: Universal beautification package for Atom editor (:warning: Currently migrating to https://github

  •    CoffeeScript

Atom-Beautify respects the core.telemetryConsent configuration option from Atom editor. If you do not wish to have usage data sent to Google Analytics then please set core.telemetryConsent to no or undecided option before using Atom-Beautify. See Anonymous Analytics section of docs for details. Thank you. Atom-Beautify is going to be completely rewritten with Unibeautify at its core! See unibeautify branch for work in progress and Issue #1174.

polyjuice - A utility to convert JSHint and JSCS files into ESLint files and vice-versa

  •    Javascript

Polyjuice is a utility that converts JSHint and JSCS files into ESLint files and the other way around. When using polyjuice.from.eslint an object with keys jscs and jshint is returned.

precommit-hook - An npm installable git pre-commit hook used to lint and test your code

  •    Javascript

This module is a handy little tool that I wrote to help enforce code quality in Node.js projects. It allows you to run any scripts defined in your package.json before a commit is made. Version 2.0.0 of this module (and the current master branch in this repository) has been updated to use git-validate, as such the configuration key in package.json will be changed to "pre-commit" with a dash, instead of the old "precommit". All other functionality should work the same.

git-slack-hook - Git receive hook to notify Slack channels

  •    Shell

This is a bash script that posts a message into your Slack channel when changes are pushed. Hook this script into post-receive for your git repositories.

safe-commit-hook - pre-commit hook for Git that checks for suspicious files.

  •    Python

This is a git pre-commit hook that is inspired by the Gitrob project. They are currently in JSON format at ~/.safe-commit-hook/git-deny-patterns.json.

pre-commit-hooks - Some out-of-the-box hooks for pre-commit

  •    Python

Some out-of-the-box hooks for pre-commit. If you'd like to use these hooks, they're also available as a standalone package.

pre-commit - A slightly improved pre-commit hook for git

  •    Javascript

A slightly improved pre-commit hook for git

JSXHint - Wrapper around JSHint for linting JSX files

  •    Javascript

JSXHint is, and always was, a bad hack to make JSX lintable in the early days of React. It will always be inferior to proper linters like ESLint because it is not able to lint JSX or ES6 syntax, it instead compiles to ES5 then lints. You may get weird linter errors, especially with more involved transforms. Don't use JSXHint anymore if you can switch to ESLint.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.