DveOps-Git-版本控制

embedded/2024/11/20 4:30:59/

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
* mastershopping## 切换分支
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 标签、分支


http://www.ppmy.cn/embedded/138965.html

相关文章

机器学习 ---线性回归

目录 摘要: 一、简单线性回归与多元线性回归 1、简单线性回归 2、多元线性回归 3、残差 二、线性回归的正规方程解 1、线性回归训练流程 2、线性回归的正规方程解 (1)适用场景 (2)正规方程解的公式 三、衡量…

【AI图像生成网站Golang】图床上传与图像生成API搭建

AI图像生成网站 目录 一、项目介绍 二、雪花算法 三、JWT认证与令牌桶算法 四、项目架构 五、图床上传与图像生成API搭建 六、项目测试与调试(等待更新) 五、图床上传与图像生成API搭建 在项目中,我们通过整合 Go 和 FastAPI 实现了图像的上传和生成功能。本…

计算机网络之表示层

一、定义与概述 在计算机网络中,OSI(Open Systems Interconnection)模型是一种广泛接受的分层模型,用于描述网络通信的各个方面。这个模型将网络通信划分为七个不同的层次,每一层都负责特定的任务,以确保数…

java中设计模式的使用(持续更新中)

概述 设计模式的目的:编写软件过程中,程序员面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有…

在vue3中如何优雅的管理loading状态

时隔多日,我又来了。近期工作实在是太忙了,基本处于天天加班的状态,整个人都麻木了,导致最近一直没有更新什么东西,感觉都快荒废了。还好,这两天处于下个项目开发前,当前项目已提测,…

热点更新场景,OceanBase如何实现性能优化

案例背景 这个案例来自一个保险行业的客户:他们的核心系统底层采用了OceanBase数据库作为存储解决方案,然而,在系统上线运行后,出现了一个异常情况,执行简单的主键更新语句时SQL执行时间出现了显著的波动。为了迅速定…

算法编程题-golang语言协程池

算法编程题-golang语言协程池 协程池代码实现 实现线程池或者协程池是面试经常需要手写的题型。本文将介绍协程池如何实现。 协程池 池化技术是很重要的一种思想,将一些频繁使用但是创建开销比较大的对象自定义保存起来,反复使用,典型的有线…

unity小:shaderGraph不规则涟漪、波纹效果

实现概述 在本项目中,我们通过结合 Sine、Polar Coordinates 和 Time 节点,实现了动态波纹效果。以下是实现细节: 核心实现 Sine 波形生成: 使用 Sine 节点生成基本的波形。该节点能够创建周期性变化,为波纹效果提供…