Skip to content

git-utilities/hooks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hooks

Collection of Git hooks for automation

Byte size of Hooks Open Issues Open Pull Requests Latest commits



Requirements

  • Bash version ~4 or greater

  • Git version ~2 or greater

  • Awk (GNU) version ~4 or greater

  • For pre-push and post-push hooks the git-utilities/push-with-hooks project, or similar script, should be installed

  • For post-push hooks the remote should have git-shell-commands, or similar scripts installed


Quick Start

Make a directory path for organizing repositories...

mkdir -vp ~/git/hub/git-utilities

Change current working directory...

cd ~/git/hub/git-utilities

Clone with Git...

git clone --recurse-submodules git@github.com/git-utilities/hooks.git

Install the git-link-hook script by symbolically linking to a directory listed within the PATH variable for the currently logged-in user's, eg...

ln -s "${PWD}/git-link-hook" "${HOME}/bin/git-link-hook"

To update/upgrade hooks in the future utilize git pull git submodule update...

cd ~/git/hub/git-utilities/hooks

git pull origin master

git submodule update --init --merge --recursive

Usage

Every script within this repository is organized with the following syntax <hooks-target>/<command-target>.

For example to activate jekyll-build script for post-push target, change directories to selected repository...

cd ~/git/hub/__org__/__repo__

Then run git-link-hook script with the hook --name and --target parameters...

git link-hook --name jekyll-build --target post-push

Provided that the git-pust-wh script is available, the following command should run the linked post-push script...

git push-wh srv gh-pages

Note, usage tips may be output for any script by assigning HELP as an environment variable prefix, eg...

cd ~/git/hub/git-utilities/hooks

HELP=true ./post-push/jekyll-build

Notes

This repository is not be feature complete and may not be fully functional, Pull Requests that add features or fix bugs are certainly welcomed.


Attribution


License

Documentation for collection of Git hooks for automation
Copyright (C) 2020 S0AndS0

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, version 3 of the License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

For further details review full length version of AGPL-3.0 License.

About

Collection of Git hooks for automation

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages