1. 概述
分布式版本控制系统
版本控制
2. Git极速上手指南
官方传送门:Git - Branching and Merging
2.1 安装
## windows
https: git-scm.com/download/
## Linux(CentOS/Fedora/Rocky Linux/RHEL)
yum install -y git
## MacOS
brew install git
## Ubuntu/Debian
apt install -y git
2.2 开发阶段
配置git相关信息
## #创建项目目录(代码目录)
mkdir -p /app/xzb-live/
## 配置用户
git config
git config --global user.name 'xzb666' ##创建用户
git config --global user.email 123456@163.com ##创建邮箱
git config --global global color.ui true ##颜色ui
git config --global --list ##查看配置列表信息
代码目录初始化
## 初始化代码目录
## 进入目录
cd /app/xzb-live/
##初始化
git init
## 查看
ll .git/
书写代码,提交到暂存区
## 书写测试代码
echo oldboyxzb >index.html
## 查看状态 仓库状态
git status
## 进行提交
git add .
git status
提交代码到本地仓库
## 提交到本地仓库
git commit -m '项目开始 完成60%'
## 查看状态
git status
再次修改文件并提交
## 修改文件内容
echo 'the projiect is finished 80%' > index.html
## 再次提交
git add .
git commit -m '项目完成 80%'
## 回滚
git checkout . ##回滚到上次git add .提交之前的内容
git 选项 | 含义 |
---|---|
git init | 初始化本地仓库目录 |
git config --global | 创建邮箱,用户名,颜色 |
git add | 提交数据到缓冲区(暂存区) git add . (所有文件) 或 git add 文件 |
git commit | 把暂存区的数据提交到本地仓库 git commit -m "标记/说明" |
git status | 显示工作空间的状态 |
git reset | 回滚 |
git reset soft cid(版本号) | 把指定的版本数据内容下载到暂存区 |
git reset HEAD | 暂存区>工作空间(被修改的状态) |
git checkout | 文件下载到工作空间并可以使用 git checkout . 或 git checkout 文件 |
git reset --mix | 版本号 |
git reset hard | 把本地仓库指定版本信息数据下载到工作目录中 |
3. git分支 branch
3.1 开发阶段
完成主分支
## 默认主分支,完成直播功能,并提交
echo 'the live is finished 100%'> index.html
git add .
[root@gitlab /app/xzb-live]# git commit -m '直播功完成了100%'
[master c3a1306] 直播功完成了100%
1 file changed, 1 insertion(+), 1 deletion(-)
创建shopping分支 书写代码
## 查看分支
git branch
* master ##默认主分支
## 创建分支
git branch shopping
git branch
* master
shopping
## 切换分支
git checkout shopping
Switched to branch 'shopping'
## 查看 切换结果
git branch
master
* shopping
## 书写shopping代码·并提交
cd /shopping
echo 'this is shopping is finished 80%'> index.html
git add .
git commit -m '购物功能完成80%'
#把shopping分支合并到master分支中
## 切换到master 然后执行merge
git checkout master
git merge shopping
3.2 分支命令总结
git 分支相关命令 | |
---|---|
git branch | 查看分支 |
git branch name | 创建分支 |
git branch -d name | 删除分支 |
git checkout 分支名字 | 切换分支 |
git merge 分支名字 | 合并分支(把指定的分支合并到当前分支中) |
git checkout -b name | 创建分支并切换到这个分支 |
4. 入住远程仓库
4.1 创建 仓库
4.2 连接远程仓库(用户名密码方式)
### 添加远程仓库(用户名密码方式)
git remote add origin https://gitee.com/xing-zhibang/xzb-live.git
## 查看
git remote -v
origin https://gitee.com/xing-zhibang/xzb-live.git (fetch)
origin https://gitee.com/xing-zhibang/xzb-live.git (push)
## 上传本地仓库的内容 到远程仓库
git push -u origin master ##需要输入账号的用户名和密码
4.3 连接远程仓库(密钥认证方式)
创建秘钥对
##创建密钥对
ssh-keygen ##一直回车
##查看
ll /root/.ssh/ ##查看密钥
-rw------- 1 root root 3243 Nov 13 14:35 id_rsa
-rw-r--r-- 1 root root 748 Nov 13 14:35 id_rsa.pub
cat /root/.ssh/id_rsa.pub
在远程仓库配置密钥
##访问仓库的主机上 创建密钥对
#修改之前配置的远程仓库地址
git remote remove origin
git remote -v
git remote add origin git@gitee.com:xing-zhibang/xzb-live.git
git remote -v
origin git@gitee.com:xing-zhibang/xzb-live.git (fetch)
origin git@gitee.com:xing-zhibang/xzb-live.git (push)
## 创建新的文件上传到远程仓库测试
echo 'the live-xzb is finished 100%' >index.html
git add .
git commit -m '直播功能完成100%'
git push -u origin master
5. 标签
5.1 tag
## 创建标签
git tag -a "标签名称" -m "描述"
## 如何上传标签
git push origin '标签名称'
## 拉取
git clone -b 标签、分支