GitHooksVS

July 9, 2025 ยท View on GitHub

GitHooksVS is a Visual Studio extension for managing Git hooks and custom scripts in your repository. It provides a user-friendly interface to enable, disable, and organize scripts for each supported Git hook type.


How It Works

  • .githooks Folder Structure
    In the root of your Git repository, create a folder named .githooks:

    • .githooks
      • pre_merge
        • 01_script_name
        • 02_script_name
  • Each subfolder corresponds to a supported Git hook type.

  • Place your shell scripts (starting with #!/bin/sh) in the appropriate subfolder.

  • Automatic Git Hook Script Generation
    The extension will automatically create or update the actual Git hook scripts in .git/hooks/ to call the enabled scripts from .githooks.

  • Configuration File
    A config file is generated to track which scripts are enabled/disabled.
    Add this config file to your .gitignore as it is intended for local use only.


Usage

  • On Visual Studio Startup / Solution Open:
    The extension checks for new scripts in .githooks and prompts you to enable them.

  • Manual Management:
    Use Tools > Manage Git Hooks in Visual Studio to open the management window and enable/disable scripts at any time.


Supported Hook Types

  • pre-commit
  • post-checkout
  • post-merge

More hook types will be added in the future.
Pull requests are welcome if you want to add support for additional hooks!


License

MIT License (or your preferred license)