title: git学习(1) - git的安装与配置
CSDN: 'https://blog.csdn.net/jj6666djdbbd?type=blog'
Blog: 'https://helloylh.com'
Github: 'https://github.com/luumod'
tags: git
abbrlink: 12001
description: 本文主要讲解了git的安装,配置基本工作
date: 2023-03-03 16:51:24
版本控制
本地版本控制系统
集中化的版本控制系统
分布式版本控制系统
git基础
git与其他版本控制系统的区别是:git只保存文件数据的整体是否发生变化。 而大多数其他系统则只关心文件内容的具体差异
换句话说:git保存每次更新时的文件快照
Git 更像是个小型的文件系统,但它同时还提供了许多以此为基础的超强工具,而不只是一个简单的 VCS。
git的所有操作都是对本地文件的资源操作,因此不需要联网。 Git 在本地磁盘上就保存着所有当前项目的历史更新,所以处理起来速度飞快。
git每次只需要从本地数据库读取内容,在任何时候都可以随时读取,再查看历史版本的时候,git会在保存的历史快照中查询,而不需要请求远程服务器或者把查询老版本的文件。
git可以在没有网络的时候随时提交更新到本地,等到有网络的时候再上传远程仓库。
git具有内容完整性的功能:在保存到 Git 之前,所有数据都要进行内容的校验和计算,并将此结果作为数据的唯一标识和索引,任何文件如果在传输时发生损坏,git都能察觉。
git使用 SHA-1 算法计算数据的校验和,这实际上是一个哈希值,git通过将文件转换为哈希值来工作,并依靠它作为git的索引。
git文件的三种形式
已提交:文件已经被安全的保存在本地数据库中
已修改:已经修改了文件,但是还没有保存提交
已暂存:把已修改的文件放在下次提交要保存的清单中
git管理项目的三个区域:
git的工作目录:项目中取出某个版本的所有文件和目录,用以开始后续工作。
暂存区域:暂存区域只不过是个简单的文件,一般都放在 Git 目录中。
本地仓库:Git或者 .git 目录:是保存元数据和对象数据库的地方,实际上克隆仓库的时候就是克隆这里面的数据
Git的工作流程:
在工作目录中修改某些文件。
修改完成后的文件进行快照存放在暂存区域中
把暂存区域中的文件的快照提交更新到Git目录中。
三种状态:
已提交状态
已暂存状态
已修改状态
git的安装
源代码安装
- 如果有 yum,则输入以下命令:
yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
- 如果有apt-get,则输入以下命令:
apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
libz-dev libssl-dev
之后,从下面的 Git 官方站点下载最新版本源代码:
http://git-scm.com/download
然后编译并安装:
$ 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
现在已经可以用 git 命令了,用 git 把 Git 项目仓库克隆到本地,以便日后随时更新:
$ git clone git://git.kernel.org/pub/scm/git/git.git
linux安装
- 具有yum的时候,通过yum安装
yum install git-core
- Ubuntu 具有 apt-get的时候,通过apt-get安装
apt-get install git
window安装
- 通过GitHub的开源项目安装 下载exe,并且运行
http://msysgit.github.com/
- 上一种方法国内下载慢,可以使用阿里镜像安装
阿里镜像下载 git
git配置
git config工具,实际上是 git-config命令,使用这个命令来配置或者读取相应的工作环境变量。而正是由这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig:系统中所有用户都使用的配置,git config时使用 --system。
~/.gitconfig:用户工作目录下的配置文件只适用于此用户,git config时使用 --global。
.git/config:当前项目的配置文件,只针对于当前项目。
每一个级别的配置都会覆盖上层相同的配置,因此.git/config会覆盖/etc/gitconfig中的同名变量。
.gitconfig的路径:默认在C盘的user的文件夹下。
修改用户信息
git在提交更新的时候需要知道是谁提交了,因此需要配置个人信息
输入以下命令:
git config --global user.name "用户名"
git config --global user.email 电子邮箱
使用--global配置的.gitconfig的文件路径:
"C:\Users\username\.gitconfig"
我们配置的是用户主目录的那个,因此所有的项目默认使用这个配置。
如果要在某个特定的项目中使用其他用户或者电脑,则需要去掉 --global ,重新配置信息即可。
文本编辑器
默认的git输入信息使用的文编编辑器
我这里使用vscode,你也可以使用Emacs 或者 vim
git config --global core.editor vscode
差异比较工具
在解决合并冲突时使用哪种差异分析工具。比如要改用 vimdiff 的话:
git config --global merge.tool vimdiff
查看配置信息
输入命令
git config --list
使用帮助命令
想要知道某个命令如何使用:
git config <xxx>
参考自:
Git 学习笔记
版权归原作者 HugeYLH 所有, 如有侵权,请联系我们删除。