git-server
INSTALL
Put something like the following in ~git/.ssh/authorized_keys:
command="git-server KEY=USER1" ssh-rsa AAAA___blah_pub__ user1@workstation
This can be used with any existing git repositories or you can create a fresh git repo:
sudo useradd git
sudo su - git
git init projectx
Then add whatever hooks you want:
vi projectx/.git/hooks/pre-read
Each hook can read the ENV settings defined in authorized_keys.
See contrib/* for some working "hooks" examples, such as logging.
See hooks/INSTALL_ACL.md for how to setup repo read/write/deploy ACLs.
To use the "git-client" convenience wrapper for .gitconfig overrides:
wget https://raw.githubusercontent.com/hookbot/git-server/master/git-client
chmod 755 git-client
mv -i git-client /usr/local/bin/git
To enable the "git deploy" capabilities on the client host:
wget https://raw.githubusercontent.com/hookbot/git-server/master/git-deploy
chmod 755 git-deploy
mv -i git-deploy /usr/local/bin/.