Moving sources DNN core modules to GitHub


Ernst Peter Tamminga blogt: 'DNN build better together via GitHub'

DNN build better together via GitHub

februari 2015 (2894) | Ernst Peter Tamminga | Webapplicaties

XCESS CEO Ernst Peter Tamminga is actief als DNN MVP: het gebruik van GitHub voor Open Source.

More openness and ease for access 

About a year or so ago I learned about GitHub: DNN moved its source to this platform so that it would be easier for people to contribute bug fixes and enhancements, in line with the true nature of Open Source. 

The move of DNN was not very successful in the first period, but slowly people got used to the possibility to contribute and working with GitHub. As a result, the # of contributions is growing and growing! See the community blog post of Joe Brinkman with an excellent illustration of growth in participation of the community in new releases of the platform. 

I have been struggling with GitHub in the beginning: it is so much different from TFS, the source control system that I am used to, both in my professional environment as well as with CodePlex for several DNN modules: Events, FAQ and Reports


During the last year I have become a bit jealous with regards to code fixes that were submitted for DNNPlatform. Together with several people, most notably Roger Selwyn, I have been maintaining the DNN Events module for more than 7 years, with success. But if I look back, the number of code donations by others than Roger and me can be counted on the fingers of one hand. In short: all changes have been done by the people in the module team, processing dozens of requests of DNNEvents users. I will not try to analyze why there were so few code donations, I just conclude that that was the way iy was over the last years. And yes, WAS the way it was, because I have changed things! 


With some help of of Joe Brinkman, I have created GitHub repositories for the source of several (former core) DNN modules: Events, Faq, Reports

Moving the source project of these modules to GitHub was not a simple step. My initial idea was to move the complete source history of the modules from the CodePlex source control to GitHub. So I requested CodePlex support to change the source control for the modules from TFS to Git, I created a clone of the CodePlex/Git locally, created a new remote repository on GitHub and pushed my local clone of the TFS repository to the GitHub repository 

That did not work out the way I wanted. The repos on GitHub contained a lot of old material, the module project structures were not clear, there were folders with files that were irrelevant for the current state of the modules. So I decided to start all over again and create repos on GitHub with (only) the source of the most recent version of the modules and forget all old material. That turned out to provide a better result: clean, straight forward. DNN Community page on GitHub


Where can you find the repos? There is a general group on GitHub for all the community modules: 

And you will find the the core module repos there: 

In the upcoming period, I will (motivate to) move the source of other core modules to GitHub as well, if the current projects owner agree on that. The first three I could decide about by myself and limiting the first round to those three is a nice way to get some real life experience in working in a new way. 


Distribution of the install packages, documentation and issue handling will remain on CodePlex, so you will find the end results in the familiar location. But I (we) will maintain and improve the source code via GitHub. Getting your version of the source is now a standard Git process: Fork & Clone! And if you start improving the module, don't forget to produce pull requests, DNN is Open Source! 

Dit artikel is een cross posting van de blog van Ernst Peter Tamminga op Open, open, PULL OPEN!