版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

1、Git简介

Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper

1.1 什么是版本控制?

版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发项目的技术。

1.2 为什么要有版本控制?

没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。无论是工作还是学习,或者是自己做笔记,都经历过这样一个阶段!我们就迫切需要一个版本控制工具。(多人开发就必须要使用版本控制)

使用版本控制之后可以给你带来的一些便利:

  • 实现跨区域多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 跟踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

1.3 版本控制的分类

1.集中版本控制 SVN

所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改。

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份。代表产品:SVN、CVS、VSS。

2.分布式版本控制 Git

Git的优势就是:每个人都拥有全部的代码,可以避免一些安全隐患。不会因为服务器孙环或者网络问题,造成不能工作的情况。

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。

1.4 Git和SVN的主要区别

  • SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

  • Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)


2、Git安装

1.Git官网

Git官网地址:https://git-scm.com/

2.下载后一步一步安装

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)版本控制工具-Git知识汇总(一)(版本控制工具git的使用)


3、Git结构

Git是一个开源的分布式版本控制系统。本地结构如下图。

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)


4、代码托管中心

我们已经有了本地库,本地库可以帮我们进行版本控制,为什么还需要代码托管中心呢?

4.1 代码托管中心的作用

  • 代码托管中心是帮我们维护远程库。
  • 介绍一下本地库和远程库的交互方式。

4.1.1 团队内部协作

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

4.1.2 跨团队协作

版本控制工具-Git知识汇总(一)(版本控制工具git的使用)

4.2 托管中心的类别

  • 局域网环境下: 可以搭建 GitLab服务器作为代码托管中心,GitLab可以自己去搭建。
  • 外网环境下:可以由GitHub或者Gitee作为代码托管中心,GitHub或者Gitee是现成的托管中心,不用自己去搭建。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年11月1日 上午8:07
下一篇 2022年11月1日 上午8:09

相关推荐

  • 科研项目一稿多投

    科研项目一稿多投的问题 近年来,随着科技的快速发展,科研项目的一稿多投问题越来越受到关注。一稿多投指的是同一个项目,在提交多个论文到不同期刊或会议上,或者同时提交多个版本或修改稿的…

    科研百科 2025年5月4日
    1
  • 蓝晓工程项目管理系统

    蓝晓工程项目管理系统 随着现代信息技术的不断发展,项目管理已经成为了一个至关重要的领域。项目管理不仅可以帮助企业提高效率,减少成本,还可以确保项目在预定时间内完成,满足客户需求并实…

    科研百科 2025年1月21日
    0
  • 造价机构项目管理软件

    造价机构项目管理软件 随着现代建筑行业的快速发展,造价机构在项目管理中扮演着越来越重要的角色。传统的项目管理方式已经无法满足现代建筑行业的高效、精准、数字化的要求。因此,造价机构项…

    科研百科 2024年8月15日
    54
  • 黔南幼专:党建引领探索学生管理新路径(党建引领幼儿教育)

    “推普助力乡村振兴三下乡团队”被教育部、团中央表彰为“优秀团队”,小学教育活动设计与实施技能大赛学生赛连续两年(2023、2024)获得省级一等奖、2023年国赛三等奖,专升本连续…

    科研百科 2024年6月26日
    68
  • 闽东医院承办宁德市病理质控培训暨宁德市医学会病理学分会年会

    为规范和提高宁德市病理质控工作和质量,响应2020年宁德市“质量月”活动,9月17日-26日,由宁德市病理质量控制中心、宁德市医学会病理学分会联合主办,宁德市闽东医院承办的“202…

    2022年8月10日
    277
  • 全屋定制你需要了解的干货!(全屋定制你需要了解的干货知识)

    在装修家居行业里,全屋定制这个细分领域这几年可谓是异军突起,成了装修家居行业里为数不多的亮点,涌现出许多大大小小的公司,比如尚品宅配、索菲亚、我乐、欧派、好莱客、劳卡、顶固、卡诺亚…

    科研百科 2024年8月7日
    62
  • 人大罗煜简历

    人大罗煜简历 人大罗煜,是一位具有丰富工作经验的企业家和投资家,同时也是一位知名的慈善家。他毕业于北京大学,获得了经济学学士学位,并在此基础上获得了北京大学光华管理学院的硕士学位。…

    科研百科 2024年9月30日
    26
  • 有哪些免费抠图软件?千万别错过这四种非常实用的智能抠图软件

    在图像处理工作中,抠图技术一直扮演着至关重要的角色。当做海报或者商品图或者其他更多的图像处理工作时,经常会需要用到抠图功能来去除图片背景,突出主题或进行创意编辑。这项工作不难,但是…

    科研百科 2024年5月1日
    102
  • 啥操作?与员工签5份3年期劳动合同,5次试用,4次延长,法院:公司赔9万

    据《劳动合同法》规定,劳动合同期限三个月以上不满一年的,试用期不得超过一个月;劳动合同期限一年以上不满三年的,试用期不得超过二个月;三年以上固定期限和无固定期限的劳动合同,试用期不…

    科研百科 2022年11月22日
    460
  • 名校线上科研项目是什么

    名校线上科研项目是什么 随着互联网技术的不断发展,线上教育已成为当下教育领域的热门话题。名校线上科研项目则是线上教育中的重要组成部分。它是指名校教师在课堂上利用互联网技术,在线上平…

    科研百科 2025年3月21日
    1