目前流行的源程序版本管理软件和项目管理软件都有哪些,各有什么优缺点?
Microsoft TFS(Team Foundation Server):
优点:
任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM能与 VS 无缝接合
缺点:
搭建、维护tfs比较复杂,硬件要求也比较高。
GitHub:
优点:
GitHub是一个非常万能的工具。对于任何大小的项目,他都是理想的工具;他也是伟大的web工作流工具。首 先,他可以作为一个版本控制系统和协作工具,用它来发布工作。
利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起完成这个项目。优点在于 ,他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。
创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。
学习Git也有很多好处。他被视为一个预先维护过程,你可以按自己的需要恢复、提交出现问题,或者您需要 恢复任何形式的代码,可以避免很多麻烦。Git最好的特性之一是能够跟踪错误,这让使用Github变得更加简 单。Bugs可以公开,你可以通过Github评论,提交错误。在GitHub页面,你可以直接开始,而不需要设置主机或者DNS。
缺点:
如果,你是Github使用新手,首先的挑战就是摆正心态——需要不断实践和时间。
他可能不是捕捉创意过程和记录创意点子的最佳工具。对于这种特殊功能模拟可以选择LayerVault 或其他相 似工具。之前,我们已经强调过Github非常适用代码跟踪,但是却不是最好的设计跟踪工具。将图片内容转 化为代码,或者将设计用于产品设置,看起来依旧不是那样顺利。
这是由设计者决定的,然而,一些人发现 GUI 有点混乱,选择CLI代替。一些开发人员学习主要使用Git命令 ,这样可以解释为什么他们不太喜欢GUI的原因了。稍加练习,命令的学习是不太困难的。然而,你喜欢天天 写命令吗?特别是跟踪项目历史或解决冲突的时候。所以就有了另外一群喜欢GUI的人们。将提交、修改、移 动文件等操作可视化,会有一个更好的体验。而这些,就如之前提到的,需要时间来适应。
如果,你专门在GIthub上工作,版本控制存储库就值得你拥有,也需要你长期付出。
Trac:
优点:
1、Trac做一个SCM配置管理平台,意味着它有良好的扩充性
2、Trac的权限体系是比较完备的设计
3、非常灵活,可以随心所欲的定制,可以和TortoiseSVN集成。
缺点:
1、不支持多项目,
2、需求和缺陷没有分离,
3、用 wiki 来替代 Word 等工具编写文档对于产品策划来说门槛太高了,
4、中文化不完整,美术人员接触起来困难重重,
5、不显示中文名,本地化做得很差,
6、核心功能很少,不安装插件基本上没法用。
BUGZILLA:
优点:
1、BUGZILLA不收费,
2、BUGZILLA现在有中文版支持
缺点:
1、BUGZILLA只能管理缺陷
Apple XCode:
优点:
1、可以自动创建分类图表。
2、自动提供撤消、重做和保存功能,无需编写任何编码。
缺点:
1、 更新版本后,某个插件可能会失效。