【第一节】Git的简介和安装

ops/2024/12/15 0:00:01/

目录

git%E7%9A%84%E4%BB%8B%E7%BB%8D-toc" style="margin-left:0px;">一、git的介绍

git%20%E7%9A%84%E5%AE%89%E8%A3%85-toc" style="margin-left:0px;">二、git 的安装

2.1 Linux 平台安装

2.2 源码安装

2.3 Windows 平台安装

2.4 Mac 平台安装

2.5 Git 配置

2.5.1 配置文件

2.5.2 用户信息配置

2.5.3 文本编辑器配置

2.5.4 差异分析工具配置

2.5.5 查看配置信息


git%E7%9A%84%E4%BB%8B%E7%BB%8D">一、git的介绍

        Git 是一种开源的分布式版本控制系统,旨在高效地管理各种规模的项目,无论是小型还是大型。

        Git 最初由 Linus Torvalds 开发,目的是为了更好地管理 Linux 内核的开发工作,它是一个开源的版本控制工具。

        与传统的版本控制工具如 CVS 和 Subversion 不同,Git 采用了分布式版本库的设计,不需要依赖服务器端软件的支持。

        Git 不仅仅是一个版本控制系统,它还具备内容管理系统(CMS)和工作管理系统的功能。

        对于有 SVN 使用经验的用户来说,需要进行一定的思维转变,以适应 Git 所引入的新概念和特性。

Git 与 SVN 的主要区别包括:

1. **分布式 vs 集中式**:Git 是分布式的版本控制系统,而 SVN 是集中式的。这是 Git 与非分布式版本控制系统(如 SVN、CVS)之间最显著的区别。

2. **数据存储方式**:Git 以元数据的形式存储内容,而 SVN 则按文件存储。在 SVN 中,所有的元信息都隐藏在类似 `.svn` 或 `.cvs` 的文件夹中。

3. **分支管理**:Git 的分支管理与 SVN 不同。在 SVN 中,分支只是一个普通的目录,而在 Git 中,分支管理更加灵活和高效。

4. **版本号**:Git 没有全局版本号,而 SVN 则有。这是 Git 与 SVN 相比的一个显著差异。

5. **内容完整性**:Git 在内容完整性方面优于 SVN。Git 使用 SHA-1 哈希算法来确保代码内容的完整性,从而在遇到磁盘故障或网络问题时,能够更好地保护版本库的安全。

git%20%E7%9A%84%E5%AE%89%E8%A3%85">二、git 的安装

        在开始使用 Git 之前,我们需要先安装它。Git 支持多种操作系统,包括 Linux/Unix、Solaris、Mac 和 Windows。

        Git 的安装包可以在以下地址下载:http://git-scm.com/downloads

2.1 Linux 平台安装

        Git 的运行依赖于一些库,如 curl、zlib、openssl、expat 和 libiconv。因此,在安装 Git 之前,需要先安装这些依赖库。

        在支持 yum 的系统(如 Fedora)或支持 apt-get 的系统(如 Debian 系列)上,可以使用以下命令进行安装:

#### Debian/Ubuntu

在 Debian/Ubuntu 系统上,可以使用以下命令安装 Git:

$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \libz-dev libssl-dev$ apt-get install git$ git --version
git version 1.8.1.2

#### Centos/RedHat

在 Centos/RedHat 系统上,可以使用以下命令安装 Git:

$ yum install curl-devel expat-devel gettext-devel \openssl-devel zlib-devel$ yum -y install git-core$ git --version
git version 1.7.1

2.2 源码安装

        你也可以从官网下载 Git 的源码包进行安装。最新源码包的下载地址为:https://git-scm.com/download

在安装源码包之前,需要先安装相应的依赖库:

#### Centos/RedHat

$ yum install curl-devel expat-devel gettext-devel \openssl-devel zlib-devel

#### Debian/Ubuntu

$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \libz-dev libssl-dev

然后解压并安装源码包:

$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install

2.3 Windows 平台安装

        在 Windows 平台上,安装 Git 非常简单。可以通过 msysGit 项目提供的安装包进行安装。下载地址为:https://gitforwindows.org/

        安装完成后,你可以使用命令行的 Git 工具(已自带 ssh 客户端),也可以使用图形界面的 Git 项目管理工具。

        在开始菜单中找到“Git”->“Git Bash”,打开 Git 命令窗口,即可进行 Git 操作。

2.4 Mac 平台安装

        在 Mac 平台上,最简单的安装方式是使用图形化的 Git 安装工具。下载地址为:http://sourceforge.net/projects/git-osx-installer/

2.5 Git 配置

        Git 提供了一个名为 `git config` 的工具,用于配置或读取相应的工作环境变量。这些环境变量决定了 Git 在各个环节的工作方式和行为。

2.5.1 配置文件

Git 的配置文件可以存放在以下三个地方:

1. `/etc/gitconfig` 文件:适用于系统中所有用户的配置。使用 `git config --system` 选项时,读写的就是这个文件。
2. `~/.gitconfig` 文件:仅适用于当前用户的配置。使用 `git config --global` 选项时,读写的就是这个文件。
3. 当前项目的 `.git/config` 文件:仅适用于当前项目的配置。每个级别的配置都会覆盖上层的相同配置,因此 `.git/config` 中的配置会覆盖 `/etc/gitconfig` 中的同名变量。

在 Windows 系统上,Git 会查找用户主目录下的 `.gitconfig` 文件。主目录通常是 `C:\Documents and Settings\$USER`。

2.5.2 用户信息配置

        配置个人的用户名称和电子邮件地址:

$ git config --global user.name "runoob"
$ git config --global user.email test@runoob.com

        使用 `--global` 选项后,更改的配置文件将位于用户主目录下,以后所有项目都会默认使用这里配置的用户信息。

        如果需要在特定项目中使用不同的用户信息,只需去掉 `--global` 选项重新配置即可,新的设定将保存在当前项目的 `.git/config` 文件中。

2.5.3 文本编辑器配置

        设置 Git 默认使用的文本编辑器,通常是 Vi 或 Vim。如果偏好其他编辑器(如 Emacs),可以重新设置:

$ git config --global core.editor emacs

2.5.4 差异分析工具配置

        在解决合并冲突时,可以指定使用哪种差异分析工具。例如,使用 `vimdiff`:

$ git config --global merge.tool vimdiff

        Git 支持多种合并工具,如 kdiff3、tkdiff、meld、xxdiff、emerge、vimdiff、gvimdiff、ecmerge 和 opendiff 等。

2.5.5 查看配置信息

        要检查已有的配置信息,可以使用 `git config --list` 命令:

$ git config --list
http.postbuffer=2M
user.name=runoob
user.email=test@runoob.com

        有时会看到重复的变量名,这表明它们来自不同的配置文件(如 `/etc/gitconfig` 和 `~/.gitconfig`),Git 最终采用最后一个配置。

        你也可以直接查阅某个环境变量的设定,例如:

$ git config user.name
runoob

这些配置信息也可以在 `~/.gitconfig` 或 `/etc/gitconfig` 文件中查看。


http://www.ppmy.cn/ops/141950.html

相关文章

日常健康:点滴积累,守护生命活力

在现代社会的快节奏生活中,日常健康往往容易被忽视,然而,它却是我们享受美好生活、实现人生价值的基石。 饮食方面,注重营养均衡是关键。每日三餐应合理搭配,保证碳水化合物、蛋白质、脂肪、维生素和矿物质的充足摄入。…

docker简单私有仓库的创建

1:下载Registry镜像 导入镜像到本地中 [rootlocalhost ~]# docker load -i registry.tag.gz 进行检查 2:开启Registry registry开启的端口号为5000 [rootlocalhost ~]# docker run -d -p 5000:5000 --restartalways registry [rootlocalhost ~]# dock…

postman可以通的请求,前端通不了(前端添加Content-type,后端收不到请求)

接口完成之后,自己使用postman测试了一下,没有问题; 可是在和小组前端调试接口的时候,他却说访问不了; 信息如下:(我自己写的一个打印请求信息的拦截器) 发现报错信息是: Content type ‘application/x-www-form-urlencoded;charset=UTF-8’ not supported 也就是说…

【Vulkan入门】13-Render

目录 先叨叨Git信息关键代码VulkanEnv::RenderOneFrame(uint32_t* pixels)VulkanEnv::CreateSyncObjects()main() 编译运行 先叨叨 经过快两周的努力,终于可以开始渲染了。 Git信息 repository: https://gitee.com/J8_series/easy-car-uitag: 13-Renderurl: http…

Spring Boot 启动流程及原理介绍

Spring Boot 是一个用于构建独立的、生产级别的 Spring 应用程序的框架。它简化了基于 Spring 的应用开发,通过提供默认配置和自动配置功能,使得开发者能够更快速地启动和运行应用程序。 Spring Boot 启动流程 1、 启动入口 Spring Boot 应用的启动通常…

HTML 基本语法

一、HTML 基本语法 在 HTML 中&#xff0c;标签可以分为单标记指令和双标记指令。 一、单标记指令&#xff1a; 如<br/>、<hr/>等单标签&#xff0c;不设置属性值时可直接使用。例如<br/>标签是换行标签&#xff0c;相当于操作系统中的\r\n操作符&#xf…

ChatGPT大模型 创作高质量文案的使用教程和案例

引言 随着人工智能技术的飞速发展,大语言模型如 ChatGPT 在创作文案、生成内容方面展现出了强大的能力。无论是个人用户还是企业用户,都可以利用 ChatGPT 提高工作效率、激发创意、甚至解决实际问题。本文将详细介绍 ChatGPT 如何帮助创作各类高质量文案,并通过具体案例展示…

快速上手Neo4j图关系数据库

参考视频&#xff1a; 【IT老齐589】快速上手Neo4j网状关系图库 1 Neo4j简介 Neo4j是一个图数据库&#xff0c;是知识图谱的基础 在Neo4j中&#xff0c;数据的基本构建块包括&#xff1a; 节点(Nodes)关系(Relationships)属性(Properties)标签(Labels) 1.1 节点(Nodes) 节点…