We have a staging setup for the website development.
Here is the complete index: http://devel.ipv6summit.ca
The source code is tracked in git. The git repository is accessible here:
The git repositories are managed using gitosis. That's the last URL, that gives you write access.
We have the following branch naming structure:
NOTE: Only Ian and Bart have write access to master. Everyone else can test on their devel server, and then ask Ian (or Bart) to merge the changes in.
Here is an example interaction:
[[:1]] $ git clone git@git.jukie.net:ipv6summit www.git [[:2]] $ cd www.git [[:3]] $ git config remote.origin.push master:refs/heads/bart/devel [[:4]] $ vim foo.php [[:5]] $ git add foo.php [[:6]] $ git commit -m"fixed spacing in foo" [[:7]] $ git push
Naturally step 1 and 2 need only be done once to get a clean clone. Step 3 sets up the default branch you can push to, otherwise your push will go to master (which fails for everyone except the integrator).
Subsequent development would following these steps:
[[:1]] $ cd www.git [[:2]] $ git pull [[:3]] $ vim foo.php [[:4]] $ git add foo.php [[:5]] $ git commit -m"fixed spacing in foo" [[:6]] $ git push
Where step 2 syncs local files with the server's published code.
If you have problems with Git contact bart@jukie.net; for help with other site stuff contact Ian.