[ninux-dev] [GSOC] example of collaborative development with github

nemesis nemesis at ninux.org
Sat Mar 29 11:46:13 CET 2014


 Hi everyone,

 i'll write in english because there are some people subscribed to this 
 list who don't speak italian.

 The other day we talked about github, branching and pull requests.

 I wanted to show you an alternative workflow to the common central repo 
 > forks method of development on github.

 Some people showed interest in an important future feature (django 1.7 
 compatibility) of a package I mantain which is quite used in the django 
 community. They showed interests by writing code and discussing it.
 To make them collaborate more closely, because we were working on the 
 same feature, I created a branch called "django-1.7", I gave them write 
 access, and I asked them to send all their commits to that branch. Now 
 we are all working on that branch, with feedback from people that are 
 very expert regarding that feature.

 This is collaborative development, perfect strangers collaborating 
 toward a common goal.

 Here's the pull request I'm talking about:
 https://github.com/djangonauts/django-hstore/pull/34

 As you can see, in the bottom, the Continous Integration tool 
 (Travis-ci.org) tells us if there's anything wrong. Every commit that is 
 pushed to that branch will be tested on django 1.5, django 1.6 and 
 django 1.7 with different python versions (2.6, 2.7 and 3.3).

 It's quite straightfoward to notice that the feature is almost ready, 
 all test passes on all django and python versions, so probably only a 
 final review is needed.

 I wanted to show you this example because I believe is very important 
 to learn from others that are better than us. Thanks to the Open Source 
 Community this has never been easier. Observe, try, fail, accept 
 suggestions, learn, improve.

 Never as today continous feedback, testing, deployment and improvement 
 has been so easy.

 For Netengine it won't be as easy because we don't have an easily 
 replicable network test environment ready that can be installed on 
 travis-ci. This is an unknown field for me too but I hope that as we'll 
 move forward we'll find more answers.

 To all those that are interested in working on Netengine during the 
 GSOC: participate in the discussion, propose ways to move forward and 
 push some code.

 Nemesis



More information about the ninux-dev mailing list