Microsoft TFS (Team Foundation Server):
Advantages:
The mission version of the requirements, project progress at a glance, for small teams, more useful than the Gantt Chart integration of project management, versioning, BUG tracking, can effectively achieve scrum and VS seamless engagement
Disadvantages:
It is more complicated to build and maintain TFS, and the hardware requirements are relatively high.
GitHub:
Advantages:
GitHub is a very versatile tool. He is the ideal tool for any size project, and he is also a great web workflow tool. First, he can use it as a version control system and collaboration tool to publish work.
With GitHub, you can archive projects, share conversations with others, and let other developers help you with this project. The advantage is that he supports multiple people to complete a project, so you can talk on the same page.
Create your own projects and backup, the code does not need to be saved locally or on the server, GitHub is doing very well.
There are also many benefits to learning about Git. He is seen as a pre-maintenance process, you can recover as you need, submit problems, or you need to recover any form of code, can avoid a lot of trouble. One of the best features of git is the ability to track errors, which makes using GitHub easier. Bugs can be made public, and you can submit errors via GitHub comments. On the GitHub page, you can start directly without having to set up a host or DNS.
Disadvantages:
If you're a novice on GitHub, the first challenge is to put a positive mindset-it needs to be constantly practiced and time.
He may not be the best tool for capturing creative processes and documenting creative ideas. For this special function simulation you can choose Layervault or other similar tools. Before, we've emphasized that GitHub is very useful for code tracking, but it's not the best design tracking tool. Turning the picture content into code, or designing for a product setup, still doesn't look that smooth.
This is determined by the designer, however, some people find the GUI a bit confusing and choose the CLI instead. Some developers learn to use GIT commands primarily, which explains why they don't like the GUI very much. A little practice, command of learning is not too difficult. However, do you like to write orders every day? Especially when tracking the project history or resolving conflicts. So there's another group of people who like the GUI. A better experience is to visualize actions such as committing, modifying, moving files, and so on. And these, as mentioned earlier, need time to adapt.
If you work exclusively on GitHub, versioning repositories are worth it and you need to pay for them for the long haul.
Trac:
Advantages:
1, Trac do an SCM configuration management platform, which means that it has good scalability
2, Trac's authority system is a relatively complete design
3, very flexible, can be arbitrarily customized, can be integrated with TORTOISESVN.
Disadvantages:
1, do not support multiple projects,
2, demand and defects are not separated,
3, using a wiki to replace Word and other tools to write documents for product planning is too high a threshold,
4, the Chinese culture is not complete, the art personnel contact difficult,
5, do not display the Chinese name, localization did poorly,
6, the core function is very few, does not install the plug-in basically cannot use.
BUGZILLA:
Advantages:
1, Bugzilla no charge,
2, Bugzilla now has Chinese version support
Disadvantages:
1, Bugzilla can only manage defects
Apple XCode:
Advantages:
1, you can automatically create a classification chart.
2. Automatically provides undo, redo, and save functions without writing any coding.
Disadvantages:
1, after the update version, a plugin may become invalid.
What are the current popular source program version management software and project management software, and what are the pros and cons?