Difference between revisions of "Switching Moodle main code repository to Git"

Jump to: navigation, search
(Next steps)
Line 1: Line 1:
 
==Necessary changes on moodle.org servers==
 
==Necessary changes on moodle.org servers==
 +
 +
===Reconfigure CVS server===
 
# stop automatic weekly tagging and daily version commits in CVS
 
# stop automatic weekly tagging and daily version commits in CVS
 
# stop automatic cvs.moodle.org --> git.moodle.org export
 
# stop automatic cvs.moodle.org --> git.moodle.org export
 
# take away all CVS write access from main CVS moodle module at cvs.moodle.org (keep all contrib and lang modules unchanged) - only moodlerobot will have access
 
# take away all CVS write access from main CVS moodle module at cvs.moodle.org (keep all contrib and lang modules unchanged) - only moodlerobot will have access
 +
 +
===Sync CVS with Git===
 
# make binary snapshot from git cvshead to CVS HEAD - override CVS checkout with files from current cvshead Git branch
 
# make binary snapshot from git cvshead to CVS HEAD - override CVS checkout with files from current cvshead Git branch
# branch MOODLE_20_STABLE from HEAD in CVS
+
 
 +
===Tweak git://git.moodle.org/moodle.git===
 +
# give write access to Sam, Petr, Eloy and Martin
 +
# set up git commit hooks that push mirrors to Github and Gitorious from git.moodle.org (all 4 branches, we need to set up keys for the moodlerobot)
 +
# set up git commit hook that triggers export to CVS commit mirror (all 4 branches, we need to tweak the PHP script and keys for CVS commit access)
 
# create new master branch from cvshead in git.moodle.org
 
# create new master branch from cvshead in git.moodle.org
# create new MOODLE_20_STABLE branch form master in git.moodle.org
 
 
# delete old cvshead branch in Git (the master is the correct name now)
 
# delete old cvshead branch in Git (the master is the correct name now)
# set up git commit hooks that push mirrors to Github and Gitorious from git.moodle.org (all 4 branches, we need to set up keys for the moodlerobot)
 
# set up git commit hook that triggers export to CVS commit mirror (all 4 branches, we need to tweak the PHP script and keys for CVS commit access)
 
# give git write access to sam, eloy, martin, skodak on git.moodle.org/moodle.git
 
# configure jira to track git://git.moodle.org/moodle.git
 
  
==Next steps==
+
===Set up git://git.moodle.org/integration.git===
# configure PULL project in tracker.moodel.org
+
# give write access to Sam, Petr, Eloy and Martin
# set up integration git repo at git.moodle.org/integration.git
+
# configure Pull project to track this repo
# give git write access to sam, eloy, martin and skodak on git.moodle.org/integration.git
+
 
# configure jira PULL project to track git://git.moodle.org/integration.git
+
===Next steps===
# set up 3 QA moodle sites on top of the integration git repo
+
* branch MOODLE_20_STABLE from HEAD in CVS
 +
* create new MOODLE_20_STABLE branch form master in git.moodle.org
 +
* set up 3 QA moodle sites on top of the integration git repo
 +
 
 +
==Already done==
 +
* create PULL project for requests
  
 
==Other==
 
==Other==

Revision as of 06:44, 13 December 2010

Necessary changes on moodle.org servers

Reconfigure CVS server

  1. stop automatic weekly tagging and daily version commits in CVS
  2. stop automatic cvs.moodle.org --> git.moodle.org export
  3. take away all CVS write access from main CVS moodle module at cvs.moodle.org (keep all contrib and lang modules unchanged) - only moodlerobot will have access

Sync CVS with Git

  1. make binary snapshot from git cvshead to CVS HEAD - override CVS checkout with files from current cvshead Git branch

Tweak git://git.moodle.org/moodle.git

  1. give write access to Sam, Petr, Eloy and Martin
  2. set up git commit hooks that push mirrors to Github and Gitorious from git.moodle.org (all 4 branches, we need to set up keys for the moodlerobot)
  3. set up git commit hook that triggers export to CVS commit mirror (all 4 branches, we need to tweak the PHP script and keys for CVS commit access)
  4. create new master branch from cvshead in git.moodle.org
  5. delete old cvshead branch in Git (the master is the correct name now)

Set up git://git.moodle.org/integration.git

  1. give write access to Sam, Petr, Eloy and Martin
  2. configure Pull project to track this repo

Next steps

  • branch MOODLE_20_STABLE from HEAD in CVS
  • create new MOODLE_20_STABLE branch form master in git.moodle.org
  • set up 3 QA moodle sites on top of the integration git repo

Already done

  • create PULL project for requests

Other

  • create a separate repository or branches for the amos bot commits in /install/xx/