CVS,SVN,Git,Mercurial 代码管理工具

        现代软件开发过程中要实现高效的团队协作,需要使用代码分支管理工具实现代码的共享、追溯、回滚及维护等功能。目前流行的代码管理工具,包括 CVS,SVN,Git,Mercurial 等

        CVS 和 SVN 是集中管理,Git 具有非常明显的优势,例如:去中心化的代码管理方式减少了开发者对中心服务器的依赖,每个成员在本地都有一个完整的代码库,在不联网的情况下也能提交代码;不同于 SVN 中的每个分支具有独立的代码,Git 中的每一个分支只是指向当前版本的一个指针,Git 的分支策略使创建和合并分支变得快捷灵活

从百度指数,也可以看到 Git 的优势被越来越多的人所认可。

Git 的优势

  • Git 可以在本地进行提交以支持离线工作;
  • Git 可以在本地创建分支并且没有命名空间冲突的问题;
  • Git 可以让提交通过 Pull Request 的方式进行,不需要所有的开发者都有主仓库的写权限;
  • Git 在优化性能时选择了合并分支作为主要的性能衡量指标,将合并分支变成了成本非常低的操作以鼓励分支的使用;
  • Git 通过 SHA-1 哈希来保证仓库中数据的可靠性,通过 SHA-1 就可以对数据进行校验,抵御了来自攻击者的恶意篡改;

Git 作为分布式的代码管理工具,越来越多的团队开始使用它并逐步替代集中式的 SVN 或 TFVC,同时也面临新的挑战。

Git 代码分支模型

在使用 Git 管理代码以及多人协作的开发模式下,一个团队甚至一个公司对 Git 的使用有统一规范的工作流程尤为重要。<br> 开发团队遵循统一的规则执行功能开发,问题修复,分支合并,版本迭代及发布等操作,可以使团队合作变得平滑顺畅,项目有序向前推进,我们把组织内这样的工作流程(workflow)称为 Git 代码分支管理模型

主流的 git 代码分支管理模型:

  • Git flow
  • GitHub flow
  • GitLab flow
  • TBD flow

image.png

参考

猜你喜欢

转载自blog.csdn.net/ejinxian/article/details/132121188