• 黑豹程序员-架构师学习路线图-百科:Git/Gitee(版本控制)


    1、什么是版本控制

    版本控制系统( Version Control )版本控制是一种管理和跟踪软件开发过程中的代码变化的系统。它允许开发人员在不同时间点对代码进行修改,并记录每次修改的细节。通过版本控制,开发团队可以轻松地协同工作,追踪代码的演变,并在需要时回滚到先前的版本。

    在这里插入图片描述

    2、特点

    1、协同,不是自己的文件管理,通常以项目组为单位;
    2、文件有一个统一的远程备份,项目组每个成员都可以把自己的文件上传远程服务器(push 推送);
    3、代码改动,再次上传,不会覆盖(这就是版本控制的特色,和普通文件管理的不同),会在Git上产生一个新文件,和旧文件的区别就是版本不同;
    4、本地文件丢失可以随时从Git仓库中下载(pull 拉取);
    5、项目组其他人升级改动了代码,可以检出最新的版本(pull 拉取);
    6、多人修改了通一个文件,如:项目的配置文件(merge 合并);

    3、发展历史

    第一代:自行管理,文件管理
    第二代:集中式、多文件管理:VSS、CVS、SVN
    第三代:分布式、多文件管理:GIT

    微软出品:VSS(Visual Source Safe)开启了版本控制的先河;GIT将其发扬光大。

    SVN(Subversion 的缩写)是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统。SVN 由 CollabNet 公司于 2000 年资助并发起开发,目的是创建一个更好用的版本控制系统以取代 CVS。

    TortoiseSVN:开源软件,在 Windows 上非常受到欢迎的一套客户端软件,它与资源管理器集成得相当不错,可以透过资源管理器在文件或目录上用鼠标右键的菜单完成 SVN 的操作。

    Git 是 Linux 作者 Linus 的另一个作品。2002 年他还在使用 Bitkeeper 作为 Linux 内核的版本管理,但因为它是 Copyright 有版权的软件备受质疑,然后 Andrew Tridgell 对 Bitkeeper 进行逆向工程,导致 BitMover 要回收 Linux 开发者的 Bitkeeper 的免费使用权,Linus 一怒之下花了 10 天写出了 Git。

    GitHub 成立于 2008 年 4 月,至今成为当下最受欢迎的社交编程及代码托管平台。
    2018年6月4日,GitHub被微软75亿美元收购。
    在这里插入图片描述

    4、SVN和Git比较

    Git 和 SVN 是从设计理念上就不一样的版本工具,SVN 将代码进行中心化管理,拥有更好的稳定性和安全性,但是去中心化的 Git 却是从 Linux 操作系统的开发需求而来,更加适合多人协作的开源项目。
    在这里插入图片描述

    5、Git

    在这里插入图片描述

    Git 是 Linux 作者 Linus 的另一个作品。2002 年他还在使用 Bitkeeper 作为 Linux 内核的版本管理,但因为它是 Copyright 有版权的软件备受质疑,然后 Andrew Tridgell 对 Bitkeeper 进行逆向工程,导致 BitMover 要回收 Linux 开发者的 Bitkeeper 的免费使用权,Linus 一怒之下花了 10 天写出了 Git。

    6、GitHub

    在这里插入图片描述

    GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。截止到2022-11-17,其注册用户已经超过9400万,托管版本数量也是非常之多,其中不乏知名开源项目Ruby on Rails、jQuery、python等。

    7、Gitee(国产)

    在这里插入图片描述

    基于Git的代码托管服务
    Gitee(码云)是开源中国于2013年推出的基于Git的代码托管平台、企业级研发效能平台,提供中国本土化的代码托管服务。
    其每10分钟同步一次Git。
    截止2023年7月,Gitee 已经有 1000万名注册用户和2500万个代码仓库,是中国境内规模最大的代码托管平台。

    8、Git的基础命令

    在这里插入图片描述

  • 相关阅读:
    一文速学-让神经网络不再神秘,一天速学神经网络基础(五)-最优化
    北京筑龙&京东安全:为采购与招标平台筑起“防火墙”
    技术管理进阶——你遇到过耍小聪明的同学吗?
    1.4_10 Axure RP 9 for mac 高保真原型图 - 案例9 【按钮】单选按钮组
    VUE 笔记 基础语法篇
    (1) Java后端从0硬撸vite3+vue3+ts项目 | 起步
    SpringBoot集成Jpa对数据进行排序、分页、条件查询和过滤
    Go sync.Map探究
    【flask入门系列】Cookie与Session
    Android原生插件开发-开发篇
  • 原文地址:https://blog.csdn.net/nutony/article/details/133452063