Version control system - setup
by Sven Laux - Monday, 30 September 2013, 2:20 PM

We are in the process of setting up the version control system so that we can start with the task of refactoring the Adapt output framework and developing the authoring tool front end.

For this purpose, we have set up separately hosted Git and Gitlab environments at (btw, the version control link at the top of this site also takes you there).

Fabien is working through the configuration of the system today and tomorrow and will set the founding developers up with access to this.

The way we have decided to set this up is as follows:

There will be two repositories / projects (One for the authoring tool and another for the output framework). This way, we can keep the commit histories separate and enable developers to work with the output framework on its own. On the downside, this means that developers working with the authoring tool have to check out two repositories and we have to provide clear instructions as to where to place the folders in relation to each other.

We will use the Gitflow process. Fabien is preparing a document to explain exactly how this applies to our project, seeing as we will have two repositories working together. As part of this, we will also document the branching strategy and process and post this up for review. We have attempted to stick closely to what we see industry best practice being. This also includes naming conventions and relevant branch name prefixes such as 'hotfix' and 'feature'. There is a very good description at (the summary PDF is also attached to this post).

We will incorporate peer review from the start. We will configure the 'master' and 'develop' branches as protected branches. They will require at least one other committer before changes can be incorporated. Also, the code in these branches should always be stable.

Fabien will be in touch to set you up with access and post the full documentation here for review.





Picture of Fabien O'Carroll
Re: Version control system - setup
by Fabien O'Carroll - Tuesday, 1 October 2013, 3:45 PM

In line with Sven's post above, I have now completed the initial setup of the version control system. I will be looking after this on an ongoing basis.

I've now set up the relevant people with access to the git repository, you should have an email from Git Lab with your password and username. The version control link at the top of the page should take you to the login screen.

Dennis, I've set you up as master for the Authoring Tool project.

If anyone has any questions or problems, please let me know.

I've almost finished the write up of the git flow document, and you can expect to see it up on here tomorrow AM


Re: Version control system - setup
by Sven Laux - Wednesday, 2 October 2013, 8:54 PM

Here is Fabien's draft Gitflow process document. Apologies for the delay - it took me a while to find the time to review.

Please comment.

Re: Version control system - setup
by Sven Laux - Thursday, 10 October 2013, 10:08 PM

We have given further thought to the version control system and arrived at the following decision:

Rather than GitLab and the self hosted Git repository, we will be using a public Github account and Git repositories. We believe this will reduce the barrier to adoption seeing as a very large percentage of developers already have Github accounts. It's also better aligned with our values of openness / doing things in the open.

We have created the following:

A Github organisation called Adapt Learning. URL:

We have sorted access out for the Sponge and Kineo developers today and would like to add on the developers from Learning Pool. Fabien is managing this.

Two Git repositories: adapt_framework and documentation

The former will be where we will build the output framework up as part of the refactoring work and where developer documentation goes. The latter is where overarching documentation for the entire project goes (this includes the main Wiki pages the 'Documentation' link points to).

Dennis, we would like you to add a third repository on called 'adapt_authoring' as and when you feel you can start developing in the open. For now, let's make sure you have the relevant access permissions over this organisation.

We have also put a lot of thought into how we structure core, contrib and community codebases and will add this in a subsequent post.

Finally, Fabien and Chris will review and update the Gitflow document so that we end up with an easy to understand guidance doc for people to contribute and fit into our processes.



Picture of Dennis Heaney
Re: Version control system - setup
by Dennis Heaney - Friday, 11 October 2013, 6:58 AM

Hi Sven,

I've sent a message to Fabien requesting that myself and Rob Moore be added to the Adapt organization on We'll continue refining our approach to the authoring tool and replicate to github as soon as we are ready. In the meantime, we'll be putting together some documentation on our architecture with a view to sharing it here.