Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Please recommend solution to share source code internally [closed]

Tags:

c#

share

I work as a C# developer,our company has 4 teams,each of which devoted some 5 years develop in C#/Java.During years we wrote some applications(Some to improve our own work efficent,some to evaluate newly-learnt techs),or downloaded some sample program from internet to meet some specific scenarios.

The problem is,these app/programs are not stored and introduced at a concentrated website.Some app/programs are put under source control--without introcduction,some are kept personally--no one except the owner himself knows its existance.You know it's quite frustrating if you re-invented the wheels before you find the wheels in a corner(We often break into such case across different teams).

So could anyone help recommend any solution for me to achieve this goal:

  1. Restore the source code with introduction.
  2. Integrate with Git , or convenient to trace source code version.
  3. Easy to search.
  4. Easy to setup and maintain.We need to setup such service within our company.

It quite looks like sourceForge,maybe:)I think probably there is already a proper product for me,isn't it?

Thank you very much for your attention!

------------Update--------------

Finally we choose Redmine and are now hosting 10+ repositories, it integrates well with Git(And many other source control tools), supports wiki to write documents, and it's convenient for users to report bugs, require features for the hosted projects. It also encourages our developers to develop and share by their own interests.

like image 929
Leonson Avatar asked Sep 13 '26 18:09

Leonson


1 Answers

Your problem really is one of philosophy. The root issue is that nobody is taking ownership of this kind of process, and you have 4 teams of people, none of whom are on the same page. It sounds like you want to take ownership of this, and that's a good thing.

The tool can be anything, but should probably be a distributed source control like Mercurial or Git. Subversion would work, but trust me, a distributed system will flow much easier if your teams are also distributed. I personally love Mercurial if you're running on Windows platforms; it integrates much more nicely than Git. It will probably take you a few days to get repositories set up with permissions, but putting everything in the same place is the right way to go here. Then, it's just a matter of someone taking the role of administrating that system, and ensuring any new projects get put into source control right away.

Other than that, your biggest hurdle is one of training. Give them the proper tools (and everyone should preferably use the same tools) like plugins or shell integration. Give them instructions on how to create new repositories, pull, branch, merge, etc. But most of all, watch them like a hawk for a few months until you're comfortable with what's going on.

like image 54
drharris Avatar answered Sep 16 '26 06:09

drharris