CICD:持续集成,持续交付--让对应的资料,对应的项目流程更加规范--提高效率
CICD 有很多的工具 GIT就是其中之一
1.版本控制概念与环境搭建
GIT的概念:
Git是一款分布式源代码管理工具(版本控制工具) ,一个协同的工具。 Git得其数据更像是一系列微型文件系统的快照。使用Git,每次提交或保存项目状态时,Git基本上都会记录当时所有文件的外观,并存储对该快照的引用。为了提高效率,如果文件没有改变,Git不会再次存储文件。
首先做一件事情有可能是一个人做,也有可能是多个人做。当多个人做的时候,我们称之为: 协同 。往往很多问题就存在人多的时候要进行对应的管理,我们该怎么做呢
常规的操作: 通过在线文档或者群聊消息进行发送文档的操作。
自动化测试:通过GIT进行在线管理,可两者同时进行操作,通过GIT工具会主动将文件 进行合并
- 测试用例:在线文档 --- 共享
- 代码怎么去进行实现呢?--- 用到对应的版本管理工具Git --- 存档、共享
Git环境搭建:
https://git-scm.com/download/win
安装git
配置当前用户的个人信息
git config --global user.name "用户名"
git config --global user.email "邮箱
检查:
git config --list
2.获取Gitee私钥和公钥
在Gitee 中对应的仓库分为:公有和私有的,当你设置了项目对应的权限即要进行配置对应的私钥和公钥,所以首先获取对应的私钥和公钥,用于身份验证和安全性的加密工具
公钥:公钥是一种加密密钥,用于将数据加密为只有对应的私钥可以解密的形式。在 Gitee 中,你会生成一个公钥并将其上传到你的账户。公钥是公开的,任何人都可以访问。它用于验证你的身份并允许其他人加密数据,使其只有你的私钥才能解密。
私钥:私钥是与公钥配对的密钥,用于解密被公钥加密的数据。私钥是保密的,并且应该只有你本人知道。在 Gitee 中,你的私钥存储在你的本地计算机上,用于对你的身份进行验证和对数据进行解密
生成公钥并查看
在终端输入命令: ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com"
ed25519 为加密方式。
xxxxx@xxxxx.com 只是生成的 sshkey的名称,并不约束或要求具体命名为某个邮箱(建议用Gitee的邮箱)
第一个回车:设置保存的位置(默认地址即可)
第二个回车:设置密码(不设置即可)
第三个回车:确认密码(不设置即可
非空仓库操作
1.拉取仓库的数据
-
新建一个文件夹,并在当前文件夹打开终端(CMD);
-
拉取对应的数据到当前的文件中,输入如下命令
git clone SSH路径
git clone git@gitee.com:XXXXXX/test-cicd5.git
2.更新仓库的数据
常用的操作:
把全新的资料直接更新到仓库(Gitee)当中
把修改后的资料更新到仓库(Gitee)当中
总结:本地仓库必须有更新才能提交到仓库当中
操作步骤:
1.首先进入到对应的仓库当中,如上 test-cicd5
cd test-cicd5
2.新建一个文件或者文件夹在该目录下,然后输入如下命令
# 1. 将文件的更改添加到暂存区,. 代表提交当前文件夹下的所有内容
git add .
# 2. 用于将暂存区中的更改提交到版本历史记录中,并附加一条简短的提交消息
git commit -m "msg"
# 3. 本地代码库的提交推送(push)到远程代码库
git push <远程仓库名称> <分支名称>
假如有多个文件
空仓库操作
操作步骤
-
新建文件夹并且进入到该目录
-
初始化仓库: git init
-
新建文件: touch 文件名 ,该命令Mac和Linux可用;Win手动右击新建文件。
-
添加文件: git add 文件名 ,只提交当中的具体文
-
确认将暂存区中的更改提交到版本历史记录中,
并附加提交消息: git commit -m "first commit"
- 绑定远程仓库并且取别名为
origin: git remote add origin git@gitee.com:XXXXXX/test-cicd2.git
- 提交到远程仓库: git push -u 远程仓库别名 "本地分支名称"
例如
python
mkdir test-cicd2
cd test-cicd2
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin git@gitee.com:XXXXXX/test-cicd2.git
git push -u origin "master
多个人操作仓库的问题
修改的不是同一个文件
直接拉取最新的代码即可
修改同一文件
思路:线上的仓库有变动同时两个人修改是同一个文件,按照场景一的方式能够解决问题但 是如果代码量多就会比较复杂。
操作步骤
方法一: 当出现异常,直接: git pull 会把你线上的东西和本地东西进行合并;去进行
取舍,正常提交即可
方法二:
-
使用 git branch 新建分支名 创建一个新分支并且默认指向当前的本地分支;
-
通过 git log 查看日志,确定上次正常处理的 commit-id ,比如上个用户提交的 ; 按 q 退出日志查看;
-
按照commit-id进行回滚: git reset --hard commit-id ;让当前的主分支回到一个正常提交的版本;
-
让当前分支拉取最新代码: git pull ;
-
合并分支: git merge 新建分支名 ,进行取舍;(将线上的分支和备份的test分支进行合并)
-
取舍完毕之后按照的操作进行提交即可
删除分支
要删除新建的分支,确保您当前位于分支列表中的其他分支,而不是要删除的分支
使用 git branch -d 命令