Git的使用及配置

114 阅读4分钟

Git分布式版本控制系统

联网运行,支持多人协作

基于服务器,客户端的运行模式

断网后,支持离线提交本地版本更新

服务器故障,可使用客户端的备份进行恢复

客户端是服务器的完整备份,并不是只保留文件的最新版本

# 什么是Git

是一个开源的分布式版本控制系统,最先进最流行 高效的处理从小到大的项目版本管理

特点

直接记录快照,而非差异比较

所有的操作都是本地执行

Git记录快照

缺点:

占有磁盘空间大 优点:版本切换非常快,每个版本都是完整的文件快照,切换版本直接恢复目标版本的快照就可以

Git中绝大多数操作

只需要访问本地文件和资源

断网后依旧可以在本地对项目进行版本管理

联网后,把本地修改的记录同步到云端服务器就可以

Git三大区域

工作区(写代码)、暂存区(临时存储)、Git仓库(存储所有完整备份)

Git的三种状态

已修改 modified:已修改的文件,但没有将修改的结果放到暂存区

已暂存 staged:对已修改文件的当前版本做了标记,使之包含在下次提交的列表中(文件修改并放入了暂存区)

已提交 commited 文件已保存在本地的Git仓库中

Git工作流程

1.在工作区修改文件

2.将你想要下次提交的更改进行暂存

3.提交更新,找到暂存区的文件,将快照永久存储到Git仓库

Snipaste_2022-11-09_20-02-59.png

Git使用

安装git-scm.com/downloads

注册账号github.com/

设置邮箱和用户名

配置用户信息

安装完Git后,设置自己的用户名和邮件地址

git config --global user.name "用户名"

git config --global user.email "邮箱"

注意:使用了--global,该命令只需要运行一次就可以永久生效 (配置了用户名和邮箱地址,会被写入到c:/users/用户名文件夹/.gitconfig文件中,该文件是Git的全局配置,配置一次永久生效)

检查文件状态 git status

以简洁的方式显示文件状态 未跟踪的文件前面有红色的 git status -s

跟踪文件(把文件存到暂存区git add 文件名、git add . 暂存区一次性添加全部文件

对提交文件进行修改git commit -m "文件修改"

撤销对文件修改

git checkout -- index.html

取消暂存的文件

git reset HEAD -- 要移出的文件名称

跳过使用暂存区域

git commit -a -m '描述信息'

移出文件

从git仓库和工作区同时移出index.js文件 git rm -f index.js

只从git仓库中移出 保留工作区中的文件 git rm --cached index.js

查看历史记录

#所有的提交历史 git log

#只展示最新的两条提交历史 git log -2

回退到指定版本 根据指定的提交ID回退到指定版本 git reset --hard

GitHub

开源的项目托管平台
<https://github.com/>

什么是开源?
开发源代码,代码是公开的,任何人都可以去查看,修改和使用开源代码

开源许可协议
开源并不意味着完全没有限制,为了限制使用者的使用范围和保护作者的权利

远程仓库两种访问方式

HTTPS:零配置,每次访问仓库时,要重复输入GitHub账号和密码
SSH:需要进行额外的配置,不需要重复输入GitHub账号和密码(推荐)

基于HTTPS将本地仓库上传到GitHub

将本地仓库和远程仓库进行关联, 并把远程仓库命名为origin
git remote add origin https://github.com/xinglovepeng2019/jxxproject_01.git
将本地仓库的内容推送到远程的origin仓库中
git push -u origin master
如果已经推送过 再次推送  git push

基于SSH将本地仓库上传到GitHub

作用:SSH 本地仓库和GitHub之间免登录的加密数据传输
好处:免登录 数据加密传输
SSH 由两部分组成
id_rsa 私钥文件 存放于客户端电脑中
id_rsa_pub 公钥文件 需要配置到GitHub中

生成SSH key

打开 Git Bash
命令 连续敲3次回车 在C:\users\用户文件夹 .ssh 目录中生成 id_rsa 和id_rsa.pub
ssh-keygen -t rsa -b 4096 -C "邮箱"

配置SSH Key

记事本打开 id_rsa_pub,复制里面内容
浏览器打开GitHub登陆,点击头像--》settings-》SSH and GPG keys-》New SSH key
将 id_rsa_pub文件中的内容,粘贴到key对应的文本框里
title文本框任意填写名称,来标识key从何而来

检测GitHub的SSH key是否配置成功

ssh -T git@github.com

远程仓库克隆到本地

git clone 远程仓库的地址