Git === Git概述 Git安装

第1章 Git概述

Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。

Git易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion(svn)、CVS、Perforce和ClearCase等版本控制工具。

1. 何为版本控制

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。

在这里插入图片描述

2. 为什么需要版本控制

个人开发过渡到团队协作。
在这里插入图片描述

3. 版本控制工具

  • 集中式版本控制工具

CVS、SVN(Subversion)、VSS……

集中化的版本控制系统诸如 CVS、SVN等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。

这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易。

事分两面,有好有坏。这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

在这里插入图片描述

  • 分布式版本控制工具

Git、Mercurial、Bazaar、Darcs……

像 Git这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。

分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:

  1. 服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)

  2. 每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)

在这里插入图片描述

4. Git简史

在这里插入图片描述

5 Git工作机制

在这里插入图片描述

6 Git和代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库。

  • 局域网

GitLab

  • 互联网

GitHub(外网)

Gitee码云(国内网站)

第2章 Git安装

​ 官网地址: https://git-scm.com/或https://github.com/git-for-windows/git/releases

​ 查看GNU协议,可以直接点击下一步
在这里插入图片描述

选择Git安装位置,要求是非中文并且没有空格的目录,然后下一步。
在这里插入图片描述
Git选项配置,推荐默认设置,然后下一步。

在这里插入图片描述
Git安装目录名,不用修改,直接点击下一步。

在这里插入图片描述
Git的默认编辑器,建议使用默认的Vim编辑器,然后点击下一步。
在这里插入图片描述
默认分支名设置,选择让Git决定,分支名默认为master,下一步。
在这里插入图片描述
修改Git的环境变量,选第一个,不修改环境变量,只在Git Bash里使用Git。

在这里插入图片描述
选择后台客户端连接协议,选默认值OpenSSL,然后下一步。

在这里插入图片描述
配置Git文件的行末换行符,Windows使用CRLF,Linux使用LF,选择第一个自动转换,然后继续下一步。
在这里插入图片描述
选择Git终端类型,选择默认的Git Bash终端,然后继续下一步。
在这里插入图片描述

选择Git pull合并的模式,选择默认,然后下一步。
在这里插入图片描述

选择Git的凭据管理器,选择默认的跨平台的凭据管理器,然后下一步。
在这里插入图片描述
其他配置,选择默认设置,然后下一步。

在这里插入图片描述
实验室功能,技术还不成熟,有已知的bug,不要勾选,然后点击右下角的Install按钮,开始安装Git。
在这里插入图片描述
点击Finsh按钮,Git安装成功!

在这里插入图片描述
右键任意位置,在右键菜单里选择Git Bash Here即可打开Git Bash命令行终端。

在Git Bash终端里输入git --version查看git版本,如图所示,说明Git安装成功。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/8302.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

杰发科技AC7801——支持的纠错功能

1. 复位寄存器保留复位类型 低压检测复位(LVD Reset) 集成了一个低压保护系统,以便在电源电压发生变化期间保护存储器内容和控制 MCU 系统状态。该系统由上电复位(POR)电路和 LVD 电路组成,LVD 可以配置为不同的复位基准&#x…

MySQL的主从复制与主从切换详解

MySQL的主从复制与主从切换详解 一、MySql主从节点的搭建一、 master主节点的搭建1. 查看是否开启bin_log日志2. MySQL开启log_bin功能3. 创建主从复制用户并授权4. mysql数据库状态查看5. 主节点锁表并进行数据备份 二、solve从节点的搭建1. 配置文件添加内容2. 同步主库数据并…

【ITK配准】第七期 尺度(Metric)-直方图均方Metric

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享ITK中的直方图均方Metric,即itk::MeanSquaresHistogramImageToImageMetric,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞…

Webshell绕过技巧分析之-base64/HEX/Reverse/Html/Inflate/Rot13

在网络安全运营,护网HVV,重保等活动的过程中,webshell是一个无法绕过的话题。通常出现的webshell都不是以明文的形式出现,而是针对webshell关键的内容进行混淆,编码来绕过网络安全产品(IDS,WAF&…

YOLO系列自研改进:基于注意力机制的多尺度特征提取模块

目录 一、原理 二、代码 三、在YOLO中的应用 一、原理 这个模块的原理仍然是利用不同大小的卷积核来提取不同尺度的特征,同样将通道划分为两部分,一部分通过注意力机制进行通道信息和空间信息的提取,另一部分通过多个不同大小的卷积核来提取多尺度的特征信息。 二、代码…

Baidu Comate——AI时代的软件开发利器

目录 Comate产品介绍 1.产品背景 ​编辑 2.产品优势 3.产品特性 4. 支持开发环境及语言 5.使用场景 Comate产品体验 Comate场景应用 2.快捷键的使用 专业插件体验 1.行间注释 2. 代码优化 3.解释说明代码 4.调优建议 5.AutoWork Comate实测体验感受 Comate产品介绍…

基于libmpv二次开发 使用函数整理

setlocale(LC_NUMERIC, "C");//必需要有,不然编译不过 mpv_handle *mpv mpv_create();//创建实例 WId widui->video->winId(); mpv_set_option(mpv,"wid",MPV_FORMAT_INT64,&wid);//设置播放器在哪个控件上显示 // Enable def…

Java 8特性(一) 之 手写Stream流filter、map和forEach方法

Java 8特性(一) 之 手写Stream流filter、map和forEach方法 今天看了一下Java 8的Stream流,学习了一下函数式编程,这才感受函数式编程如此爽,之前就使用过ES8.7.1的函数式编程,当时就在想啥时候咱也能写出这…

【日常运维】pm2起的应用删除应用日志后,发现磁盘控间没有释放,lsof | grep delete 也没看到相关进程,怎么办?

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8…

三维dp,LeetCode 1463. 摘樱桃 II

目录 一、题目 1、题目描述 2、接口描述 python3 cpp 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 python3 cpp 一、题目 1、题目描述 给你一个 rows x cols 的矩阵 grid 来表示一块樱桃地。 grid 中每个格子的数字表示你能获得的樱桃数目。 你有…

FastJson==xml与json格式互转工具类

一、xml格式介绍 XML(eXtensible Markup Language)是一种标记语言,它的设计目的是为了存储和传输数据,而不是用于显示数据,这一点与HTML(HyperText Markup Language)不同。以下是XML的一些关键…

流畅的python-学习笔记_协议+继承优缺点

接口和协议 python动态语言,没有interface等概念,接口和协议方法有的也有替代品,所以类似于鸭子类型,只关注行为像鸭子,不关注它是不是鸭子。不是每个接口都得实现,这是允许的 猴子补丁 可动态给对象添加…

Java的BIO/NIO/AIO

1. Java中的BIO、NIO和AIO的基本概念及其主要区别 BIO (Blocking I/O): 传统的同步阻塞I/O模型。每个连接创建成功后都需要一个线程来处理,如果连接没有数据可读,则线程会阻塞在读操作上。这种模型简单易理解,但在高并发环境下会消耗大量系统…

ORACLE 19C RAC DIAG进程消耗大量内存的分析

近期一个ORACLE 19C的RAC环境,多次出现数据库实例的后台进程DIAG消耗很多内存(达到20G),节点1、节点2都出现过次问题。 问题分析:通过对DIAG进程TRACE分析,结合在ORACLE官方后台进行问题、BUG查询匹配&…

【ITK配准】第七期 尺度(Metric)-Kullback-Leiber距离Metric

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享ITK中的互信息Metric,即itk::KullbackLeiblerCompareHistogramImageToImageMetric,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! …

全局测试用例环境和访问共享资源的GoogleTest教程

全局测试用例环境和访问共享资源的GoogleTest教程 介绍 在软件开发中,测试是确保软件质量的关键步骤之一。GoogleTest是一个流行的C测试框架,它提供了丰富的功能来编写和运行测试用例。在实际的软件项目中,有时需要在测试用例之间共享一些资…

思腾合力受邀参加VALSE 2024视觉与学习青年学者研讨会

在充满学术氛围的五月,思腾合力荣幸受邀参加了于2024年5月5-7日在重庆举行的第十四届VALSE大会。作为视觉与学习领域的顶级交流平台,VALSE大会每年都吸引着全国专家与学者的目光。 本次大会不仅延续了往届的高水平学术研讨,还进一步拓宽了研究…

台湾精锐APEX行星减速机噪音产生及优化策略

台湾精锐APEX行星减速机在各种机械装置中的应用逐渐广泛。然而,其噪音问题也日益凸显。噪音不仅影响工作环境,还可能对设备的正常运行和使用寿命产生负面影响。因此,了解APEX行星减速机噪音的产生以及优化噪音问题变得至关重要。 APEX行星减…

安卓自动化脚本制作流程详解!

在移动应用日益普及的今天,安卓自动化脚本制作成为了开发者提高工作效率、减少重复劳动的重要手段,本文将详细介绍安卓自动化脚本的制作流程,并通过五段源代码的实例,帮助读者更好地理解和掌握这一过程。 一、安卓自动化脚本制作…

从U盘到云端:企业数据泄露的那些事

在企业的日常运营中,数据安全无疑是极为关键的一环。无论是U盘还是云,数据泄露事件的发生都可能导致企业的核心机密被窃取,甚至损害企业的商业利益和声誉。以下是关于从U盘到云端,企业数据泄露的一些常见情况和应对策略。 U盘&…