Git repositories for web pages belonging to a sourceware.org-side project may be created with a handy dandy shell script:

  1. Run as root: /sourceware/infra/bin/mkgithtdocs FOO.

This creates bare git repos accessible as git://sourceware.org/git/FOO-htdocs.git and other related URLs. This also initializes the needed gitweb files, so the repo shows up at https://sourceware.org/git/, and makes https://sourceware.org/project/ live.

To convert an old-school CVS htdocs:

  1. rename the old htdocs directory under /sourceware/www/sourceware/htdocs/
  2. run the above script to create new git repo
  3. run (cd /cvs/PROJECT-htdocs/.../htdocs; find . -name '*,v' | cvs-fast-export > EXPORT.txt)
  4. into a temporary clone of the new git repo, run git fast-import < EXPORT.txt
  5. # git checkout (to fetch the master branch g-f-i created); git push
  6. check that https://sourceware.org/$PROJECT is updated via the post-update hook
  7. fix ownership/permissions of /sourceware/www/sourceware/htdocs/$PROJECT dirs especially
  8. clean up temporary clone and EXPORT.txt
  9. remove the /cvs/PROJECT... symlink
  10. remove the old htdocs backup directory after verification