1.Git是什么?Git是目前世界上最先进的分布式版本控制系统。
1.1版本控制
版本控制是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发项目的技术。
1.1.1本地版本控制记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS
1.1.2集中版本控制 SVN 所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改。****
1.1.3分布式版本控制 Git所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。
2.Git的基本使用方式
2.1Git目录介绍
2.1.1Git init进入某个空的文件夹下,打开Git Bash命令窗口输入git init
主要用来初始化一个空的git本地仓库。执行完上面的命令,当前目录下会自动生成.git隐藏文件夹,该隐藏文件夹就是git版本库
hooks:这个目录存放一些shell脚本。
info:包含git仓库的一些信息
logs文件夹,保存所有更新的引用记录。打开logs文件夹可以看到其中有两个文件,refs文件夹和HEAD文件。heads文件里面存储的是本地分支的对象,每个对象的文件名就是本地的一个分支名。我们使用git branch查看本地所有分支时,查询出的分支就是heads文件夹下所有文件的名称,这些分支文件中存储的是对应分支下的操作记录。
objects文件夹:存放所有的 git 对象,哈希值一共40位,前 2 位作为文件夹名称,后 38 位作为对象文件名。
refs:顾名思义就是引用,refs下有三个文件夹。
config。保存当前仓库的配置信息。
description:仓库的描述信息。
HEAD文件:这就是我们常说的HEAD指针,它指向了当前分支
#配置用户名
git config --global user.name "test"
#配置邮箱
git config --global user.email abc@163.com
git insteadof是一个Git配置选项,用于在拉取或推送代码时重定向URL。
2.2git remote 命令用于在远程仓库的操作。
显示所有远程仓库:git remote -v
添加remote:git remote add origin
免密配置:
内存:git config –global credential.helper’cache –timeout=3600’
硬盘:git config –global credential.helper’store –file /path/to/credential-file’
Ssh-keygen -t ed22519 -C “email@111.com”