What github valuable strategy ?

What github valuable strategy ?

by Valery Fremaux -
Number of replies: 1

Hi all,

Being in effort to organize middle term support of my ten years ontribution work to Moodle, I'm making actual review of all contribs to get a simple and affordable way to pursue proper support.

Some voices asked me to github most of the code, as actually handled on old Moodle contrib CVS server....

As having some prior rather bad experience with Git in terms of produtivity process, i never studied so down the winning pratices....

New contrib process for Moodle 2 contribs is great in all checks it makes for having a solid contrib base, but unluckily costs me too much work on all pack for my own yet... as Moodle 2.0 conversion of some (still undone) plugins is planned and could get funded in France, probably will those plugins will reintegrate the new plugin base when stabilized in Moodle 2.

For memory, here comes the full plugin offer that is maintained and managed in the french "MoodleLab" community moodle space :

Activity modules

mod/flashcard - Flashcard (memoizing)
mod/techproject - Technical project manager
mod/tracker - Ticket tracking system
mod/magtest - Multitrack test (groupmaker)
mod/scheduler - Face-to-face meeting scheduler

mod/customlabels - Course preformatted elements
mod/userquiz - User selection quiz

Blocks

blocks/groupspecifichtml - Group Specific HTML BLock
blocks/rolespecifichtml - Role Specific HTML Block
blocks/profilespecifichtml - Profile Specific HTML Block
blocks/use_stats - Use Time Statistics
blocks/vmoodle - Moodle virtualisation block
blocks/chronometer - Chronometer block
blocks/publishflow - Course MNET deployment block
blocks/userfiles - User files manager
blocks/openmeetings -  Openmeetings virtual classroom as a block
blocks/course_ascendants - Navigation to course ascendants
blocks/course_descendants - Browsing from a metacourse to an enrollable linked course
blocks/dashboard - Graphical dashboard element (block)
blocks/courseshop - Moodle Courseshop

Authentication

auth/ticket - Authentification par ticket temporaire (notifications)

Course reports

course/report/trainingsession - Use time progress report

Integrations

cms - Integrated Content Management System
certification - Advanced Certification in Moodle 1.9

Resource types

type/user.... - Personal resources (user file and user directory - obsoletes in Moodle 2) (linked to blocks/userfiles)

Enrol plugins

enrol/sync - File based complete course/user/enrol/user thumbs synchronisation
enrol/profilefield : Custom profile field based self-enrolment
enrol/trainingcredits : Training credits account based enrolment

Question types

question/type/splitset - Split Set Question Type
question/type/randomconstrained (see mod/userquiz)

Course formats

course/format/page - Format Flexipage (enhanced version)

I released the quasi totality of all this code as public contribs... some of them still to be added.... (sleeping or very local projects)

All those are yet main developped and maintained for our Moodle 1.9 projects, some have been upgraded by friends such as Scheduler by Tomek Muraz, Flashcard, or the Use stats block other are in progress, such as Tracker, other are now planned such as VMoodle, the Publishflow block... some are yet to schedule.... when possible (some of them are really big... --- Techproject, Courseshop, etc.)

So if people that do have true experience of efficient multiple package management on Git strategy could give some advice, fairly Welcome.

Cheers.

Valery / France

Average of ratings: -
In reply to Valery Fremaux

Re: What github valuable strategy ?

by Tim Hunt -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

Look at https://github.com/moodlehq/ or https://github.com/moodleou/ as examples.

The good way to do it is to have a separate github repository for each plugin. That way, it is easy to get a zip file for the plugin that you can add to Moodle, and it is easy for people to install the plugin into their existing Moodle code with a single git command. See, for example, the readme file at https://github.com/moodleou/moodle-qtype_ddwtos.

You should be able to see from the examples above what the naming convention for the github repositories is.