Git pre-commit hook not running on windows

user1578653 picture user1578653 · Dec 16, 2013 · Viewed 39.6k times · Source

I'm just starting to look into Git hooks, but I can't seem to get them to run.

I set up a local repository, so there is now a '.git' directory in my project folder. I have added a '.cmd' file into the C:/path/to/my/project/.git/hooks directory named 'pre-commit.cmd'. Here is the contents of this file:

echo "HOOK RUNNING"
echo. 2>C:/path/to/my/project/.git/hooks/EmptyFile.txt

This should echo the text "HOOK RUNNING" and create an empty text file in that directory. However, if I commit changes through my IDE (NetBeans) or use Git Bash to commit, neither of them seem to run my pre-commit hook, as no file is created.

My understanding is that all you have to do to get a hook to run is add an executable with the name of the hook (as I have done). Am I doing something wrong?

Note: This is on a Windows 7 PC.

Answer

Asenar picture Asenar · Dec 16, 2013

What about naming your hook pre-commit (without any extension) ?

EDIT: and add #!/bin/sh on the first line or #!/bin/bash (suggested in comments)