GitoLite
Install gitolite
Gittolite is a nice tool to manage access and git repositories with an additional admin-repository.
Server Site
Install the port by:
cd /usr/ports/devel/gitolite/
make install
make cleanNow we create the home dir of the git user:
mkdir /usr/local/git
chown git:git /usr/local/gitSet a password for the user git:
passwd gitClient Site
Now we copy our public key to the server with:
scp ~/.ssh/id_rsa.pub git@server:name.keyNow login with the user git and ssh:
ssh -o PubkeyAuthentication=no git@serverNow we setup the gitolite repo:
gitolite setup name.key
exit vi without modification on the file.
exitCheckout the admin repository with:
git clone git@server:gitolite-adminDo your modification, commit it and push it back to the server.
Move existing repo to gitolite
At first we create a new repo using the gitolite mechanism by editing the file gitolite.conf from the cloned gitolite-admin repository:
repo newrepo
  RW+ = userCommit this change and push it to the server.
Now we can push our existing repo into gitolite. Go to the repo you want to push into your gitolite managed repos and insert:
git push --all git@server:newrepoUpgrade Gitolite v3
Upgrade gitolite using normal FreeBSD upgrade (portmaster or portupgrade). After this is finished we have to upgrade the hook scripts.
Login into the server with the git account:
ssh -o PubkeyAuthentication=no git@serverUpgrade with:
gitolite setupThat’s it.
EMail Notifier
gem install git-commit-notifier