I'm planning to open source my software program within my organization.
I'm hoping that people will develop new features or correct bugs and share their development with everyone else on a "Shared Drive".
How are all the different versions managed ?
I can see the whole thing getting out of control : ie too many versions causing confusion or taking up too much memory in the shared drive.
You need version control (or "revision control") software. Two versions of the source code is one too many.
Edit:
Possible source of confusion: the term "Open Source" has a special meaning to the software community that doesn't really apply to sharing program development within an organization.
I would contact the free software foundation. They are better suited to aid you in the move to open sourcing your code.
Your best bet is to start a project on SourceForge.net. They have Subversion/Change Management already in place. Check them out. Also, what a better way to get your software out there than by using a well known Open Source repository.
I think you neopen source software programsed one clarification: if you are sharing source within an organization that is one thing and there are many good SCM (source code management) programs available and Subversion with a good branching structure (with everyone having a branch and a bug branch) and independent trunk with Cruise Control and some kind of ANT deployment would be a good place to start whether or not the project is internal or true "Open Source". Versions can be formal or the time stamp of the build in Agile techniques. Rollbacks are easy. If you control the merges to the main trunk and all mods and fixes are to the trunk you are usually in control of the development process.
"Open Source" to the greater software and user community has some different characteristics...to summarize a lot of thoughts and organizations:
The Source code is made available to anyone and its use is governed by the underlying licenses usually GPL2 or 3, BSD, etc.
It is usually free.
And, usually you provide the copyright.
And, then you usually post it for download on a site like SourceForge.
And, sometimeopen source software programss Communities build up around the project further developing the project.
If you developed your code on company time, of course, you would need permission, and there are some major consequences especially around the GPL license which would have to be thought through... If you get through all of the approvals, copyrights, and licensing issues then you would be basically ready to go.
From there you would "package" your project or code, go to SourceForge and request to submit a project. They have a "relatively" simple application process (you answer questions and describe your project). A couple days later it is approved. You figure out the upload process, upload your code, and away you go. If it is a small project you would need much more than that...
If you are trying to build an Open Source community and coordinate it that is a whole different subject which I don't think is what you are trying to do...
Good luck. Either way a good Source Code Management process is required whether internal or external.
No comments:
Post a Comment