++ed by:

4 PAUSE users
1 non-PAUSE user.

Gustavo Leite de Mendonça Chaves


TODO - Ideas for future versions of Git::Hooks


version 1.8.1

TO-DO list of niceties for the future of Git::Hooks.

The following list is no order whatsoever. Any comments or other suggestion are welcome at gnustavo AT cpan.org.

Support the WIN32 Platform

Currently we abort the build on Makefile.PL.

Improve documentation

We need:


Use Locale::TextDomain to internationalize it?

L10N pt_BR

As a first job after i18n I intend to nationalize it to Brazilian Portuguese.

In CheckAcls implement DENY for ACL operations

Along the lines of NFSv4 ACLs (http://tools.ietf.org/html/rfc5661#section-6). I'm thinking about prefixing the what component with a '!'.

Implement equivalents for the SVN::Hooks plugins

Currently we're missing DenyFilenames and UpdateConfFile. Actually, I'm thinking that UpdateConfFile is too much specific. Perhaps something along the lines of this post-update hook would be more interesting: http://stackoverflow.com/questions/279169/deploy-a-project-using-git-push.

Implement the Scott Chacon example hooks

In https://github.com/schacon/githooks.

In CheckLog allow for stop words

CheckLog.spelling should have a way to register stop words. I'd have to ask for a change in Text::SpellChecker.

The Gerrit default commit-msg implements some checks that could be used here. Some other things to check:

Require Signed-off-by lines (https://github.com/icefox/git-hooks/blob/master/git_hooks/commit-msg/signed-off-by)
Duplicate Signed-off-by lines (https://github.com/icefox/git-hooks/blob/master/contrib/commit-msg/duplicate-signedoffby)

CheckJira post-receive hook

Mikko Koivunalho suggested that Git::Hooks::CheckJira could be modified so that it would not just check that the ticket exists, but actually copy the commit message to the ticket.

Turn t/test-functions.pl into a module

Idea provided by Skye Shaw to make its functions usable by third-party plugins. Something like Git::Hooks::Test.

Emulate the uploadvalidator Gerrit plugin


pre-commit or pre-push

It would be nice to let the user decide in which of these two hooks he'd like to have his checks run. The idea would be to have a (default and per-plugin) configuration option called *.hook accepting the options pre-commit and pre-push (defaulting for the former). This way the user would be able to make his checks run on any one of the hooks.

Use the post-rewrite hook in CheckRewrite

The CheckRewrite plugin was written without resort to the post-rewrite hook, which I think was implemented later. It seems that it would make the implementation easier and more efficient. I would still use the pre-rebase hook to detect unsafe rebases before they're done, however there should exist an option to choose to postpone the check to after the rebase.

The pre-commit and post-commit hooks would be replaced by the post-rewrite though.


Gustavo L. de M. Chaves <gnustavo@cpan.org>


This software is copyright (c) 2015 by CPqD <www.cpqd.com.br>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.