NAME
git-client - Git Client Wrapper
DESCRIPTION
Wrapper around the real git provide additional functionality.
GIT_CONFIG Override
Allows for .gitconfig descent override. It will traverse up the parent directories until a .gitconfig is found, then it will use that instead of only looking at HOME.
-O <OPTION>
Populates GIT_OPTION_* environment variables on server side. These ENV settings will be available to all the server side hooks, including the pre-* hooks. Note that for this to work, the git ssh server must have "AcceptEnv XMODIFIERS" enabled in its sshd_config.
DEBUG
Sets DEBUG environment on server side to match the same numeric value as set on the client invoker.
INSTALL
Just make sure this program comes BEFORE the real "git" program in the PATH.
For example, as super user, you could do this:
[root@deploy-host ~]# wget https://raw.githubusercontent.com/hookbot/git-server/master/git-client
[root@deploy-host ~]# chmod 755 git-client
[root@deploy-host ~]# mv -i git-client /usr/local/bin/git
[root@deploy-host ~]#
Or as normal user, you could do this:
[root@deploy-host ~]$ wget https://raw.githubusercontent.com/hookbot/git-server/master/git-client
[root@deploy-host ~]$ chmod 755 git-client
[root@deploy-host ~]$ mkdir -p ~/bin
[root@deploy-host ~]$ mv -i git-client ~/bin/git
[root@deploy-host ~]$ grep 'PATH=$HOME/bin' ~/.bash_profile || echo 'export PATH=$HOME/bin:$PATH' | tee -a ~/.bash_profile
[root@deploy-host ~]$
SYNOPSIS
cd ~/src/github/project
touch ../.gitconfig
git config --global user.email 'hookbot@github.com'
git config --global --list
PURPOSE
Allows you to use many different .gitconfig files within each folder of git repos. If there is no .gitconfig within the directory descent structure, then it will behave exactly like the normal git.
AUTHOR
Rob Brown <bbb@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2016-2025 by Rob Brown <bbb@cpan.org>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.