zoukankan      html  css  js  c++  java
  • 版本管理(一)之Git和GitHub的区别(优点和缺点)

    Git 简介

     

    https://www.yiibai.com/git/getting-started-git-basics.html

    Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

    Git Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

    Git是目前世界上最先进的分布式版本控制系统(没有之一)。

    Git 与 SVN 区别

    GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。

    如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征。

    Git SVN 区别点:

    1GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVNCVS等,最核心的区别。

    2GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。

    3GIT分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录。

    4GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。

    5GIT的内容完整性要优于SVNGIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

    1.SVN优缺点
    优点: 
    1、 管理方便,逻辑明确,符合一般人思维习惯。 
    2、 易于管理,集中式服务器更能保证安全性。 
    3、 代码一致性非常高。 
    4、 适合开发人数不多的项目开发。 
    缺点: 
    1、 服务器压力太大,数据库容量暴增。 
    2、 如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。 
    3、 不适合开源开发(开发人数非常非常多,但是Google app engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。

    2.Git优缺点
    优点: 
    1、适合分布式开发,强调个体。 
    2、公共服务器压力和数据量都不会太大。 
    3、速度快、灵活。 
    4、任意两个开发者之间可以很容易的解决冲突。 
    5、离线工作。 
    缺点: 
    1、学习周期相对而言比较长。 
    2、不符合常规思维。 
    3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

    github 和 git的区别

    git是一个分布式版本控制系统,不同类型的版本控制软件还有svnmercurialvssSourceAnywhere等。

    Github是一个集成了git的服务。它可以以网页或者客户端的形式,帮助用户把git本地的数据提交到远程的服务器里。同样的服务还有git oschinagit 京东git csdn。这些服务都是免费的。

  • 相关阅读:
    Asp.net Core Kestrel 免费实现https
    sqlserver空间数据 + c# 实现查询附近的设备
    abp.vNext mvc版中的js和css
    asp.net core 3.x Identity
    asp.net core 3.x 授权默认流程
    Asp.Net WebApi 上传文件方法(原生js上传和JQ ajax上传)
    一个简单的.NET轻量级的ORM——Dikeko.ORM
    Mysql常见安装问题梳理(以5.6版本为例)
    Asp.netCore RESTful WebApi 小结
    初识Asp.netCore RESTful WebApi
  • 原文地址:https://www.cnblogs.com/cp168168/p/8734043.html
Copyright © 2011-2022 走看看