{ "info": { "author": "Augustin Borsu", "author_email": "dev@sagacify.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: English", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Topic :: Text Processing" ], "description": "\u041a\u043e\u043c\u0438\u0442\u0435\u0442 Git'a \u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438\n==========================\n\n|CircleCI branch| |Docker Stars|\n\n\u041a\u043e\u043c\u0438\u0442\u0435\u0442 Git'a \u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (\u041aGit\u0411) or Git security committee, is a\ncommit message style enforcer. It comes in two parts, a web hook for\ngithub (lubyanka) and a local git commit-msg hook (resident). In an\nideal world, a local hook should be enough, in practice, mistakes\nhappen. The KGitB is here to ensure no mistakes are ever allowed through\nto infect your master branch.\n\nexamples\n--------\n\n- `failing `__\n- `passing `__\n\nresident\n========\n\nResident can be installed using pip using the following command. If you\nhave a permission errors try using the --user flag with pip and add\n~/.local/bin to your path. It should not require any dependencies.\n\n::\n\n pip install kgitb\n\nTo install in a local repository, go into it and run:\n\n::\n\n resident install --local\n\nTo set it up in another repository or multiple repository, you can path\nit a path to the repositor(y/ies) that you want to install it to:\n\n::\n\n resident install --path PATH_TO_REPO1 PATH_TO_REPO2\n\nTo set it up globally.\n\nWARNING 0: Only works with git 2.9.0+\n\nWARNING1: If it hasn't been set yet, this option will set the\ncore.hooksPath value in your ``.gitconfig`` to\n``$HOME/.config/git-global-hooks``. This will disable all local hooks in\nyour repositories. If this is not what you want, you might want to have\na look at hook templates.\n\nWARNING2: global means for the user, system setup hasn't been\nimplemented (yet, PR anyone?).\n\n::\n\n resident install --global\n\nIf the webhook is correctly set up, you should see a\n``APPROVED BY THE KGitB.`` line when you commit something, or if there\nare errors, the commit will fail with a description of the errors.\n\nCurrently there are no options to select. They will be added at a later\npoint.\n\nlubyanka\n========\n\nLubyanka is the headquarters of all residents. It should be run on a\nserver and setup with github to check all pull-requests. As excpected,\nif there are any violations, lubyanka will submit a helpful if somewhat\nauthoritative comment message and set the status to error. If there are\nno violations it will set the status to success and congragulate you on\na job well done.\n\nTo run lubyanka, get a copy of the code, install the requirements and\nexecute it with the following commands:\n\n::\n\n git clone https://github.com/Sagacify/komitet-gita-bezopasnosti.git\n cd komitet-gita-bezopasnosti\n pip install -r requirements.txt\n GH_TOKEN=`YOUR GITHUB TOKEN HERE` python -m kgitb\n\nIf you use docker remember to set the GH\\_TOKEN environment variable and\nlink to port 5000.\n\nThe github token is needed to write comments, set the pr status as well\nas access any private repo.\n\ndoc\n===\n\n\u041aGit\u0411 conventions are closely related to the `angularJS commit\nconventions `__\nslightly revised as follow.\n\nCommit Message Format\n---------------------\n\nEach commit message consists of a **header**, and optionaly a **body**\nand a **footer**. The header has a special format that includes a\n**type**, a **scope** and a **subject**:\n\n::\n\n (): \n \n \n \n