From: http://www.lingang.gd.cn /? Action = show & id = 329
An application is definitely not accomplished by one person independently. After all, human energy is limited. Many tools can provide powerful help in our collaboration process. Here is just a summary list, which is extremely superficial and will not be discussed in depth.
1. Source Code Management
This should be needless to say. It is essential for team-level collaborative development. Now the mainstream is SVN (subversion), and distributed source code management git and mercurial are also popular. Google Code already supports mercurial, maybe this is because mercurial is written in Python.
2. team collaboration platform
Previously, I tried to use wiki + mail list to build a communication platform within the team. Finally, I chose the open-source gforge platform.
Provides source code management (CVS, SVN, git), Gantt charts, email lists, forums, code snippets, defect tracking, task management, wiki ...... And so on. It is said that gforge is also used in the IBM open-source website. Gforge is also very convenient to deploy. gforge provides a vmwarevm image, which can run on VMWare Player, vmware workstation, and VMware Server. After the deployment is complete, it can be managed through a browser. You do not need a virtual machine, but it is difficult to deploy it.
3. Selection of internal communication tools of the team
Multi-user communication is the most common communication tool in common use, such as QQ groups. However, discussions in QQ groups are often inefficient and are vulnerable to the infection of others in QQ, therefore, an internal communication platform is extremely important. The mailing list + instant messaging tool may be a good choice.
For the mail list, you can select Google
Groups, instant messaging, open source platform openfire + spark Based on Jabber is definitely a good choice. Provides files
Transmission, multi-person chat, chat records, phone integration ,. These problems are sufficient to cope with communication issues.
4. Summary
To sum up, document management (Wiki), Knowledge sorting (blog), source code management (SVN, git, mercurial), instant messaging (jabber), and Bug Tracking (bug tracker ), for a single project, TRAC can meet the requirements. For multiple projects, gforge is a good choice. Considering that the lab project is definitely not
Therefore, gforge is selected. Write another bash script, which is automatically backed up every night when the night is quiet. In this way, the code is more secure and secure.