This is a document I intend to maintain for my own purposes. It serves as a quick reminder for the steps needed when creating and working with git repositories.
First setup a bare repository on the server.
$ git --bare init projectX.git Initialized empty Git repository in /pub/git/projectX.git/
Set one-liner description, visible in gitweb.
$ echo "Secret project, use ROT13 to decode source code" >projectX.git/description
Set up a
post-update hook so that the server repo is update
automatically when you push to it.
$ cp ~/public_html/programming/post-update projectX.git/hooks/
Change how the “Owner” field in gitweb is displayed to include an obfuscated email address.
$ vi projectX.git/config [gitweb] owner = "Joachim Nilsson <troglobit()vmlinux!org>"
These steps have become so common to me that I’ve setup a script to create server side git repositories. You can now push to the server, after having setup remote location on the client.
$ git remote add origin ssh://email@example.com/pub/git/projextX.git $ git push origin master $ git push --tags