Gitolite
"Gitolite allows you to setup git hosting on a central server, with fine-grained access control and many more powerful features." gitolite.com GnuCash maintains its source code repositories in gitolite. This comes with some constraints on how to administer the repos. You can't just delete and recreate a repo on the server for instance. You need to do some steps the gitolite way or things stop working.
This page is meant to collect such points of attention.
Contents
Replace gnucash-htdocs repo
Background: the gnucash-hdocs repo (used to) contain all the compiled documentation. This documentation alone is about 570Mb, which most website editors will never touch. So it was decided to move these docs into a separate repo. Replacing the repo affect several other repos: the github slave repo and the website's slave repo. Both have to be replaced at the appropriate time as well.
Here's the steps that should do it:
On github
- rename repo gnucash-htdocs to gnucash-htdocs-old
- create a new, empty repo called gnucash-htdocs
In gitolite-admin
- comment out the gnucash-htdocs repo (this will make gitolite "forget" about this repo)
- disable the code that tickles www to pull website updates
- push changes upstream
On code
- move gnucash-htdocs directory out of the way
In gitolite-admin
- uncomment the gnucash-htdocs repo (this causes gitolite to recreate repo)
- push changes upstream
On code
- set git://github.com/Gnucash/gnucash-htdocs.git as origin for the gnucash-htdocs repo
On Geert's local machine
- set git@code.gnucash.org:gnucash-htdocs as origin for the gnucash-htdocs repo
- push reduced repo
On www
- create a new empty repo
- set git://github.com/Gnucash/gnucash-htdocs.git as origin for this new repo
- pull from origin
- check if all is there
- replace the existing repo with the new one
- set git@code.gnucash.org:gnucash-htdocs as origin for this repo
And repeat for beta site