Note: This is specific to using TortoiseGit to add your hooks.
I’ve covered Creating a pre-commit hook for TortoiseSvn previously for SVN. We can create similar hooks for GIT also.
Either create a script or other form of executable (this one’s a C# console application). This example is going to do nothing of real interest. It’ll simply stop commits to a repo. but is useful if we place a Debugger.Break before the Console line, for debugging purposes
static int Main(string[] args) { Console.Error.WriteLine("No commits allowed"); return 1; }
A non-zero return value indicates a failure and hence this code will effectively stop any commits to the repository it’s applied to.
The arguments sent to the method will be as follows
* 1st arg is the file name of a file which contains a list of files that have changed
* 2nd arg is the file name of a file which has the commit message
* 3rd arg is the folder being committed
Now we compile our application and place it in the .git\hooks\ folder and we need to name it pre-commit.exe.
That’s all there is to it.