博客
关于我
「初级篇」跟我一起学docker(九)--持续系统集成了解下git
阅读量:337 次
发布时间:2019-03-04

本文共 1566 字,大约阅读时间需要 5 分钟。

>>原创文章,欢迎转载。转载请注明:转载自,谢谢!

>>原文链接地址:

什么是持续集成?

持续集成(Continuous integration,简称CI)。

        根据敏捷大师Martin Fowler的定义,“持续集成是一种软件开发实践。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。许多团队发现这种方法可以显著减少集成引起的问题,并可以加快团队合作软件开发的速度。

为什么要持续集成?

    1 快速发现错误:每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易。

    2 防止分支大幅偏离主干:如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成。

下面是持续集成的图谱介绍:

1 将更改提交到代码管理仓库

2 持续集成服务器收到请求拉取变更代码

3 持续集成服务器编译代码

4 持续集成服务器跑代码相关测试

5 持续集成服务器测试结束

6 持续集成服务器对结果进行反馈Docker在持续集成中的作用:Docker提供代码编译、打包、测试的相关环境。

优势:

1 环境可以是是任意版本

2 节省空间

3 环境相对隔离

什么是Git?

    Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

GitHub官网注册:https://github.com/

Git客户端安装:yum install –y git

Git常用命令:

1 初始化git项目

git init

2 查看当前项目状态

git status

3 新建文件并再次查看状态

echo “# My Project” > README.md

git status

4 记录当前操作,记录新加入的文件并再次查看状态

git add README.md

git status

5 记录当前更改并加以信息描述

git commit 文件名 -m’add my first project’

6 查看提交历史

git log

7 新建远程仓库

git remote add origin https://github.com/limingios/git-test.git

8 同步到远程仓库

git push -u origin master

9 从远程代码库同步到本地

git pull origin master

10 与同步前对比变更

git diff HEAD

11 查看当前更改变更

git diff --staged

12 恢复到为更改状态

    git reset README.md

13 覆盖本地文件

    git checkout octocat.txt

14 新建分支

    git branch feature1

15 切换分支

    git checkout feature1

16 删除本地分支

    git branch –d feature1

Git hook配置

    Git也具有在特定事件发生之前或之后执行特定脚本代码功能(从概念上类比,就与监听事件、触发器之类的东西类似)。Git Hooks就是那些在Git执行特定事件(如commit、push、receive等)后触发运行的脚本。

按照Git Hooks脚本所在的位置可以分为两类:

本地Hooks,触发事件如commit、merge等。

服务端Hooks,触发事件如receive等。

下图为github的webhooks:

下图为gitlab的webhooks:

两者在使用上并没有什么不同,使用命令也是完全兼容的。

往期docker学习:

你可能感兴趣的文章
架构师入门:搭建基本的Eureka架构(从项目里抽取)
查看>>
Java核心技术及面试指南 流程控制方面的面试题答案
查看>>
MongoDB 快速扫盲贴
查看>>
修复搜狗、360等浏览器不识别SameSite=None 引起的单点登录故障
查看>>
2017/08/21 工作日志
查看>>
EXTJS4.2——10.Tab+Iframe
查看>>
WEB基础——AJAX
查看>>
one + two = 3
查看>>
Kali Day01 --- arpspoof命令进行断网攻击(ARP欺骗)
查看>>
echart关系图平分节点删除时自动平衡问题
查看>>
【Coursera】Internet History 读书笔记
查看>>
《ODAY安全:软件漏洞分析技术》学习心得-----shellcode的一点小小的思考
查看>>
PHP serialize && unserialize Security Risk Research
查看>>
Decision tree(决策树)算法初探
查看>>
sctf_2019_easy_heap
查看>>
StringBuilder拼接字符串,“,”在前还是在后问题
查看>>
给asterisk1.8.7添加menuselct选项
查看>>
ASP.NET Core分布式项目实战(oauth2 + oidc 实现 server部分)--学习笔记
查看>>
ASP.NET Core分布式项目实战(oauth2 + oidc 实现 client部分)--学习笔记
查看>>
组合模式
查看>>