• 01 【版本控制和Git的安装介绍】


    01 【版本控制和Git的安装介绍】

    工程设计领域中,使用“版本控制”管理工程蓝图的设计过程。在 IT 开发中也可以使用版本控制思想管理代码的版本迭代。

    1.目的

    协同修改:支持在服务器对同一个文件多人协同地修改;
    数据备份:同时保存目录及文件的当前状态与每次提交时的历史状态;
    版本管理:不保存版本间的重复数据以节约存储空间;

    为此,SVN 和 Git 分别采用增量式管理 和文件系统快照 的方式。

    权限控制:对团队协作者进行权限控制(SVN 和 Git 共有);审核团队外开发者贡献的代码(Git 独有);
    历史记录:查看修改者、修改时间、修改内容、日志信息等项目;将本地文件恢复到某一指定的历史状态;
    分支管理:允许开发团队同时优雅地推进多条生产线任务,提高效率。

    2. 工具

    版本控制工具是版本控制思想的实现。

    2.1 集中式版本控制工具

    如:CVS、SVN、VSS 等。

    • 仅云端库有版本历史记录,本地库仅有最新的版本;
    • 无法完全避免单点故障的问题。

    单点故障:一个主机连接多个处理节点,主节点负责分发任务,而子节点负责处理业务,当主节点发生故障时,会导致整个系统发故障。

    image-20220827211244519

    image-20220827211204909

    2.2 分布式版本控制工具

    如:Git、Mercurial、Bazaar、Darcs 等。

    • 云端库和本地库都会为各个版本历史记录存档;
    • 从根本上避免了单点故障。

    image-20220827211230657

    3.Git 简介

    3.2 Git:分布式版本控制系统

    Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

    下图就是分布式版本控制工具管理方式:

    image-20221006131925125

    仓库(版本库):相当于一个专门用来存放代码的目录。这个目录里面的所有文件都可以Git管理,每个文件的增删改查都能被Git跟踪到

    3.2 发展史

    image-20220827211720552

    3.3 优势

    • 大部分操作在本地完成,不需要联网;
    • 完整性保证;
    • 尽可能添加数据,而不是删除或修改数据;
    • 分支操作非常快捷流畅;
    • 与 Linux 命令全面兼容。

    4.Git 软件的安装

    从 https://git-scm.com/downloads 下载对应操作系统的二进制可执行文件。

    直接下一步的过程就不介绍了

    1.安装到无空格的英文路径下(这是软件安装过程中的规范,防止因程序的不健壮而引发未知错误);

    image-20220827211905363

    2.选择需要安装的组件;

    image-20220827211916721

    3.选择 Visual Studio Code 用于 Git 的默认文本编辑器;

    image-20220827212000737

    4.设置在执行git init命令后,由 Git 自行定义新存储库的初始分支名称——master

    image-20220827212024257

    5.设置PATH环境变量——保持默认;

    image-20220827212111362

    6.选用内置的 OpenSSH 作为 SSH 可执行文件;

    image-20220827212130586

    7.选择 OpenSSL 库作为 HTTPS 传输端;

    image-20220827212142376

    8.使用默认配置转换文本文件中的行尾;

    image-20220827212154165

    9.使用默认配置,选用 MinTTY 作为 Git Bash 的终端;

    image-20220827212206242

    10.对于执行git pull命令后的行为保持默认;

    image-20220827212223848

    11.选用默认的授权助手;

    image-20220827212233762

    12.其他杂项设置;

    image-20220827212247326

    13.保持对实验性选项的禁用后安装 (Install);

    image-20220827212312589

  • 相关阅读:
    快速构建基于Paddle Serving部署的Paddle Detection目标检测Docker镜像
    耗时半月,把牛客网最火Java面试题总结成PDF,涵盖所有面试高频题
    NIO中ByteBuffer
    LeetCode 1344. 时钟指针的夹角
    CMOS反相器的工作原理和电路结构
    MFC真的过时了吗?C++是否真的适合做GUI界面?
    7.网络原理之TCP_IP(下)
    controller搭建Nova报错
    《两化融合 数字化转型 价值效益参考模型》国家标准全文
    超精准!AI 结合邮件内容与附件的意图理解与分类!
  • 原文地址:https://blog.csdn.net/DSelegent/article/details/126612850