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

Jump to: navigation, search
 
(24 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
==Necessary changes on moodle.org servers==
 
==Necessary changes on moodle.org servers==
# stop automatic weekly tagging and daily version commits in CVS
+
 
# stop automatic cvs.moodle.org --> git.moodle.org export
+
===Reconfigure CVS server===
# 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
+
# <font color="green">DONE</font> stop automatic weekly tagging and daily version commits in CVS
 +
# <font color="green">DONE</font> take away all CVS write access from main CVS moodle module at cvs.moodle.org (keep all contrib and lang modules unchanged) - only account skodak, moodler and moodlebot can commit manually
 +
# <font color="green">DONE</font> stop AMOSbot committing into HEAD
 +
# <font color="green">DONE</font> stop automatic cvs.moodle.org --> git.moodle.org export
 +
 
 +
===Set up git://git.moodle.org/integration.git===
 +
# <font color="green">DONE</font> give write access to Sam, Petr, Eloy and Martin
 +
# <font color="green">DONE</font> configure Pull project to track this repo
 +
 
 +
===Tweak git://git.moodle.org/moodle.git===
 +
# <font color="green">DONE</font> give write access to Sam, Petr, Eloy and Martin
 +
# <font color="green">DONE</font> create new master branch from cvshead
 +
# <font color="green">DONE</font> delete old cvshead branch in Git (the master is the correct name now)
 +
 
 +
===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
+
 
# tag 2.0 in CVS
+
===Next steps===
# create new master branch from cvshead in git.moodle.org
+
* branch MOODLE_20_STABLE from HEAD in CVS
# create new MOODLE_20_STABLE branch form master in git.moodle.org
 
# tag 2.0 in git.moodle.org
 
# 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 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)
 
# 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 and skodak on git.moodle.org/moodle.git
+
* create new MOODLE_20_STABLE branch form master in git
# configure jira to track git://git.moodle.org/moodle.git
+
* set up 3 QA moodle sites on top of the integration git repo
 +
* create some workflow for amosbot commit requests into /install/xx/
 +
 
 +
==Already done==
 +
* create PULL project for requests
  
==Next steps==
 
# set up integration git repo at git.moodle.org/integration.git
 
# give git write access to sam, eloy, martin and skodak on git.moodle.org/integration.git
 
# configure jira to track git://git.moodle.org/integration.git
 
# set up 3 QA moodle sites on top of the integration git repo
 
  
 
[[Category:Git]]
 
[[Category:Git]]

Latest revision as of 08:14, 23 December 2010

Necessary changes on moodle.org servers

Reconfigure CVS server

  1. DONE stop automatic weekly tagging and daily version commits in CVS
  2. DONE take away all CVS write access from main CVS moodle module at cvs.moodle.org (keep all contrib and lang modules unchanged) - only account skodak, moodler and moodlebot can commit manually
  3. DONE stop AMOSbot committing into HEAD
  4. DONE stop automatic cvs.moodle.org --> git.moodle.org export

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

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

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

  1. DONE give write access to Sam, Petr, Eloy and Martin
  2. DONE create new master branch from cvshead
  3. DONE delete old cvshead branch in Git (the master is the correct name now)

Sync CVS with Git

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

Next steps

  • branch MOODLE_20_STABLE from HEAD in CVS
  1. 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)
  2. 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 MOODLE_20_STABLE branch form master in git
  • set up 3 QA moodle sites on top of the integration git repo
  • create some workflow for amosbot commit requests into /install/xx/

Already done

  • create PULL project for requests