[[Category:Services]]
{{warning| This project is now deprecated.}}
{{warning| Gitolite is now in read-only mode as we are migrating to [http://gogs.io/ Gogs]. Our Gogs instance is available at https://git.fixme.ch/. See [[Git]] or ask [[User:dgellow]] for more informations.}}
== Goal ==
* Provides GIT repositories to the members.
* The deploy hook is located at <code>/home/git/hooks/deploy.sh</code> in the [[Internal_Server]].
* You must add a <code>post-receive</code> hook in your project in a file <code>/home/git/repositories/yourproject/hooks/post-receive</code> with the following content:
DIR=/wherepath/yourto/project/should/be/deployed #example: /var/www/foo/htdocs
APP=user-to-chown-to #example: www-data
/home/git/hooks/deploy.sh $APP $DIR
* Permissions fix for the hooks and repo
chmod +x /home/git/repositories/yourproject/hooks/post-receive
chown gitolite:gitolite /home/git/repositories/yourproject/hooks/post-receive
chown -R gitolite:$APP /path/to/project
find /path/to/project -type f -exec chmod 640 {} \;
find /path/to/project -type d -exec chmod 750 {} \;
* It's also a good thing to have a check of the database when you launch the application, and automatically create it if it doesn't yet exist.
If you come from svn, forget all that you have learnt, and start from scratch. A good start would be to do the http://git-scm.com/ tutorial.
Some good ressources to learn git includes:
* http%3A%2F%2Fftp://ftp.newartisans.com%2Fpub%2Fgit/pub/git.from.bottom.up.pdf
* http://eagain.net/articles/git-for-computer-scientists/
== See also ==
* [[Git_talk]]