aizo

Contributing to dSS development
Zurich, 13.01.2010, Johannes Winkelmann
Outline
•   Tools
•   Licensing
•   Development process
•   Getting started




01/14/10                  2
Development infrastructure

                            Redmine
                           (Planning,
                    ...
Redmine
Redmine project management web application
• Issue tracking
• Release Planning
• Wiki
Open Source
https://develope...
Redmine - Demo
•   Overview
•   Project planning
•   Issues
•   Wiki
•   Git browser




01/14/10               5
git Version Control System
•   Distributed Version Control System (DVCS)
•   Powerful branching and merging
•   Fast!
•   ...
Centralized VCS


            Central
           repository

                                   Commit




               ...
Distributed VCS – Scenario #1


            Master
           repository



                        Push

               C...
Distributed VCS – Scenario #2

                         2. Pull
            Master                          User
         ...
Distributed Version Control
Properties of a DVCS:
• User checks out the whole code history to a local repository
• Changes...
git tool demo
• git gui commit tool
• gitk history browser




01/14/10                 11
gitorious git project hosting
• gitorious git hosting web application
• Easy way to follow ”official” development tree
• A...
gitorious (continued)
• Hosted by digitalSTROM.org, allowing contributors to start
    developing right away
• Provides a ...
gitorious demo
• Overview
• Project timeline
• Merge request




01/14/10             14
Hudson – Continuous Integration Engine
•   Hudson Continuous Integration engine
•   Verifies builds after every git commit...
Hudson demo
•   Build overview
•   Project
•   Job details
•   Build time and trends




01/14/10                    16
dSS Licensing
Dual licensed:
• Open Source release under the GNU General Public
    License 3 (GPL)
• Closed Source dS.org...
GPL Release
Implications of releasing the software under the GPL:
• We make the source code available for everyone to read...
Why Open Source
Reasons for the Open Source release
• Transparency / Privacy considerations
• Avoid vendor lock in
• Impro...
Why the dual licensing
• Open source is not established everywhere yet
• Allows integration with proprietary software syst...
Development Process
Contributor
• Register on https://gitorious.digitalstrom.org
• Clone dss project in gitorious
• Implem...
Getting started
https://developer.digitalstrom.org/redmine
• Source code access
• Redmine (Wiki, Issue tracking)
• Maillin...
aizo
Thanks for your
interest... we're looking
forward to your
contributions!
Upcoming SlideShare
Loading in …5
×

Contributing to dSS development

5,272 views

Published on

Introduction to the tools used by the digitalSTROM developers.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
5,272
On SlideShare
0
From Embeds
0
Number of Embeds
4,215
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Contributing to dSS development

  1. 1. aizo Contributing to dSS development Zurich, 13.01.2010, Johannes Winkelmann
  2. 2. Outline • Tools • Licensing • Development process • Getting started 01/14/10 2
  3. 3. Development infrastructure Redmine (Planning, Wiki, Issue tracking) Hudson Gitorious Git DVCS Continuous git hosting Integration 01/14/10 3
  4. 4. Redmine Redmine project management web application • Issue tracking • Release Planning • Wiki Open Source https://developer.digitalstrom.org/redmine 01/14/10 4
  5. 5. Redmine - Demo • Overview • Project planning • Issues • Wiki • Git browser 01/14/10 5
  6. 6. git Version Control System • Distributed Version Control System (DVCS) • Powerful branching and merging • Fast! • Powerful tools • Open Source • Via https://gitorious.digitalstrom.org (coming next week) 01/14/10 6
  7. 7. Centralized VCS Central repository Commit Checkout Local checkout 01/14/10 7
  8. 8. Distributed VCS – Scenario #1 Master repository Push Clone Local Local commit repository 01/14/10 8
  9. 9. Distributed VCS – Scenario #2 2. Pull Master User repository repository 1. Push Clone Local Local commit repository 01/14/10 9
  10. 10. Distributed Version Control Properties of a DVCS: • User checks out the whole code history to a local repository • Changes can be shared easily between repositories • No need to create user accounts on a central server, which allows potential contributors to immediately start development without action from the project 01/14/10 10
  11. 11. git tool demo • git gui commit tool • gitk history browser 01/14/10 11
  12. 12. gitorious git project hosting • gitorious git hosting web application • Easy way to follow ”official” development tree • Allows developers to − fork the code to implement new features − request merging of these new features − Review code and add inline comments on merge requests 01/14/10 12
  13. 13. gitorious (continued) • Hosted by digitalSTROM.org, allowing contributors to start developing right away • Provides a well defined workflow for contributors and core development team • Open Source • https://gitorious.digitalstrom.org (coming next week) 01/14/10 13
  14. 14. gitorious demo • Overview • Project timeline • Merge request 01/14/10 14
  15. 15. Hudson – Continuous Integration Engine • Hudson Continuous Integration engine • Verifies builds after every git commit • Ensures compilation and unit test success • Will soon also include cross compiler builds • Open Source 01/14/10 15
  16. 16. Hudson demo • Build overview • Project • Job details • Build time and trends 01/14/10 16
  17. 17. dSS Licensing Dual licensed: • Open Source release under the GNU General Public License 3 (GPL) • Closed Source dS.org license for dS.org alliance members Contributor License Agreement • Defines licensing of features and bugfixes submitted via gitorious 01/14/10 17
  18. 18. GPL Release Implications of releasing the software under the GPL: • We make the source code available for everyone to read • The code may be reused as long as the derivate work is released under the same terms 01/14/10 18
  19. 19. Why Open Source Reasons for the Open Source release • Transparency / Privacy considerations • Avoid vendor lock in • Improved security thanks to more eyes looking at the code • Enabling contributors to implement ideas we could not think of ourselves 01/14/10 19
  20. 20. Why the dual licensing • Open source is not established everywhere yet • Allows integration with proprietary software systems 01/14/10 20
  21. 21. Development Process Contributor • Register on https://gitorious.digitalstrom.org • Clone dss project in gitorious • Implement changes as wanted • Push changes back to gitorious • Request merge in gitorious Core developer • Review merge request • Provide feedback, merge into mainline or reject 01/14/10 21
  22. 22. Getting started https://developer.digitalstrom.org/redmine • Source code access • Redmine (Wiki, Issue tracking) • Mailling lists https://gitorious.digitalstrom.org (coming soon) • Git hosting Mailing lists: • dss-announce@forum.digitalstrom.org • dss-developer@forum.digitalstrom.org 01/14/10 22
  23. 23. aizo Thanks for your interest... we're looking forward to your contributions!

×