zoukankan      html  css  js  c++  java
  • 20180320作业1:源代码管理工具调查

    一、找出并了解当前较为流行的几种源代码管理工具(至少三种);

    二、建立表格对这些源代码管理工具的优缺点进行比较分析。

    源代码管理工具

    优点

    缺点

    GitHub

    免费且开源。

    用于敏捷高效地处理任何或小或大的项目。

    Git支持分支功能(branch)。

    Git 提交都是原子的,且是整个项目范围的,而不像 CVS 中一样是对每个文件的。

    Git 中的每个工作树都包含一个具有完整项目历史的仓库。

    简易的初始化。对于随便写两行代码就要放到代码管理工具里的人来说,再合适不过。

    学习成本大。由浅入深的过度很漫长,需要大量时间的投入。

    Git版本库需要频繁的手动维护。

    SVN

    对目录的组织的管理更加方便。SVN不光对文件做版本跟踪,也会对目录做版本跟踪。

    保证提交操作的完整性。SVN对提交操作的处理方式类似数据库的事务处理,要么全部成功,要么全部无效,保证了原子性。

    SVN允许一个文件有任意多的可命名属性,功能十分完全。

    不能离线工作。所有的版本信息都放在服务器上。提交、更新、浏览历史的速度慢。耗费CPU资源。

    代码不能及时提交。强迫使用者即时处理冲突,然后才能提交。

    不能恢复到历史版本。

    需手动“cleanup”。很多评论回复这点让他们抓狂。

    Mercurialhg

    学习门槛较低。整体上看,hg需要掌握的命令要比git少很多。

    可以一键完全恢复到历史版本的某一个切面。

    封装好。相比githg很少暴露一些实现内的细节。

    照顾 svn 的迁移用户。

    hg pull 更多的时候可以让你避免创建分支。

    hg的版本库不需要维护。

    分支管理不灵活。Mercurialbranch管理和Git相比不是很方便。大型团队不愿使用

    Microsoft TFS

    任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用集成了项目管理、版本控制、BUG 跟踪。

    能有效实现 SCRUM能与 VS 无缝接合。

    搭建、维护tfs比较复杂,硬件要求也比较高。

    整个系统是用 asp 实现的,用浏览器访问相当慢。

  • 相关阅读:
    Java8基础学习之Object类
    Java8基础之equals方法和==的区别
    Spring集成ElasticSearch
    ElasticSearch常用的查询过滤语句
    数据库查看SQL执行计划
    数据库优化总结
    ElasticSearch之集群原理
    curl命令操作ElasticSearch总结
    ElasticSearch相关概念总结
    ElasticSearch基础入门
  • 原文地址:https://www.cnblogs.com/linhui0822/p/8616094.html
Copyright © 2011-2022 走看看