Git学习笔记1

2023-09-19 09:20:10

任务要求:

1、使用git提交代码到仓库;

2、实现自动代码发布系统;

1、了解DevOps的发展历程和思想;

2、学会git版本控制;

3、会使用github公有仓库和gitlab私有仓库;

4、了解CI/CD;

5、使用jenkins实现自动发布;

DevOps是一种实现Dev(开发)与Ops(运维)工作流有效联合的思想。

最终目标就是为了体现开发与运维有效结合方法,越是高级应用,越接近我们DevOps思想所阐述的做事方法。

最初:程序开发的所有环节,从规则说明书、到软件开发、到测试、到部署、再到技术支持。

软件工程师、网络管理员、数据库开发者、网页开发者、系统架构师、测试工程师等。

敏捷意味着开放和拥抱改变,但是改变太多的话,人们就很难专注到最终目标和交付上来。

此时精益软件开发就开始出现。

精益求精:目的就是为了进一步减少项目风险,实现快速交付。

1)杜绝浪费;

2)内建质量;

3)增强学习能力;

4)延迟决策;

5)快速发布;

越早获得客户反馈,越早安排开发事项;越短开发周期,越快从市场获得实时信息,为应变市场变化获得时间;

6)授权和尊重;

让团队成员知道工作全貌;

7)系统思考;

鼓励人与人之间的沟通,促进探讨如何生产处更好的产品和服务。

从精神上关注做正确的事情,同时能够让整个开发流程拥有足够的弹性。

DevOps:

软件开发团队一般会包括项目经理,系统架构师,前端开发者,后端开发者,测试工程师,网络工程师,运维工程师等。软件先由后端开发者、前端开发者进行开发,当软件开发完成,需要部署的时候,软件会通过自动化手段到达架构师,运维工程师等这些运维人员手上,由运维人员进行部署,发布即可。

如何让软件在开发、测试、运维及最终发布之间进行有效的流动,这就是DevOps所要关注的重点。

DevOps是一种文化、一种理念、是一种把开发、测试、运维及最终发布工作流进行联合的思想。

整个团队应该关注从需求被定义到开发,再到运维这个过程,直到价值被以服务的形式交付给最终用户。将这种方式带到实践中的产出便是永远不要将已知的缺陷传递到下游工作永远不要为了局部优化影响了整体价值流交付总是为了增加价值流动努力,永远追求对架构的深刻理解。

实践方法:

1)所有环境和代码使用同一个仓库,将软件包纳入版本管理;

2)团队共同决定发布流程;

3)保持DEV/TEST/PRODCTION环境的一致性;

4)自动化回归测试;

5)小步提交、每日部署;而不是一次部署大量变更;

6)更快、更频繁发布。

回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。

放大反馈环:

几乎所有流程的改进都是为了从时间上缩短和从覆盖面上放大反馈循环,从而可以不断地进行必要的改正。

实践方法:

代码审查及配置变更检查

有纪律的自动化测试,使许多同时的小型敏捷团队能够有效地工作;

尽早地设置监控预警;

修复bug为团队最高优先级;

团队成员之间高度互相信任;

团队之间保持沟通和良好合作;

持续实验和学习的方法:

从失败中学习,通过反复实践来达到精通;

需要实验和冒着失败的风险,通过反复地试错来掌握使我们远离危险的技能。

实践方法;

故障模拟,把人工错误引入到系统中,加强系统的健壮性;

生产中部署一台服务器用于故障训练,以便练习服务器经常处于失效状态下的故障恢复能力。

团队有没有按照DevOps的思想去工作,可以按以下清单进行对照即可

  • 开发团队和运维团队之间没有障碍。两者皆是DevOps统一流程的一部分。
  • 从一个团队流到另一个团队的工作都能够得到高质量的验证
  • 工作没有堆积,所有的瓶颈都已经被处理好。
  • 开发团队没有占用运维团队的时间,因为部署和维护都是处于同一个时间段。
  • 开发团队不会在周五下午5点后把代码交付进行部署,剩下运维团队周末加班加点部署
  • 开发环境标准化,运维人员可以很容易將之扩展并进行部署
  • 开发团队可以找到合适的方式交付新版本,且运维团队可以轻易的进行部署。
  • 每个团队之间的通信线路都很明确
  • 所有的团队成员都有时间去为改善系统进行试验和实践
  • 常规性的引入(或者模拟)缺陷到系统中来并得到处理。每次学习到的经验都应该文档化下来并分享给相关人员。事故处理成为日常工作的一部分,且处理方式是已知的

 

版本控制概念:

什么是版本?

答:centos6.9 centos7是操作系统版本;nginx-1.10 nginx1-14这些属于软件的版本;一个配置文件或一个代码文件多次被修改,这些都有对应的版本。

什么是版本控制:

版本控制软件提供完备的版本管理功能用于存储、跟踪目录文件的修改历史,是软件开发者的必备工具,是软件公司的基础设施。版本控制软件的最高目标,是支持软件公司的配置管理活动追踪多个版本的开发和维护活动,及时发布软件。 

通过git记录每一次修改的信息。

常见的版本控制系统及比较:

cvs、svn、git都是版本控制系统。

腾讯tapd、百度icafe、阿里云效也是一站式的版本控制。

cvs和svn都是集中式的版本控制系统;

git是分布式的版本控制系统;

分布式版本控制系统可以不连网工作,因为版本库就在你自己的电脑上。

分布式版本控制系统可以没有中央服务器,每个人的电脑都是一个完整的版本库,可靠性高。

分布式版本控制系统也可以有一台充当“中央服务器”的电脑,但是这个服务器的作用是用来方便大家交换自己的修改,没有它大家都一样干活,只是交换修改不方便而已。

 

 

更多推荐

在比特币上使用可检索性证明支付存储费用

我们为用户开发了一种为云存储付费的新方法。与亚马逊的S3等传统云存储相比,用户不必信任服务器。我们使用比特币智能合约来确保支付取决于服务器的可检索性证明(PoR),该证明只能在数据仍然可用且需要时可以检索的情况下生成。可检索性证明(PoR)许多人通过将他们的数据(如音乐、照片和文档)上传到远程服务器来外包存储,以确保可

mock技术在测试中的应用

技术简介mock技术又叫测试桩、挡板在软件测试中,对于一些不容易构造、获取的对象,用一个虚拟的对象来代替它,以达到相同的效果,这个虚拟的对象就是mock。mock技术并不是只有测试领域用,最早是在开发领域应用,典型例子:前后端联调。比如一个功能,前端功能写完了,但是后端还没做好,前端可以使用mock技术模拟后端发过来的

10:STM32------I2C通信

目录​​​​​​​一:I2C通信协议1:I2C简历2:硬件电路3:I2C时序基本单元A:开/终条件2:发送一个字节3:接收一个字节4:应答机制4:I2C时序1:指定地址写2:当前地址读3:指定地址读二:MPU60501:简历2:参数3:硬件电路4:框图5:寄存器地址三:案例A:软件I2C读写MPU60501:连接图2:

前端面试合集(三——浏览器)

浏览器的页面渲染1.浏览器是如何渲染页面的?2.什么是reflow(重排)?3.什么是repaint(重绘)?4.为什么transform效率高?1.浏览器是如何渲染页面的?当浏览器的网络线程收到HTML文档之后,会产生一个渲染任务,并将其传递给渲染主线程的消息队列。在事件循环机制的作用下,渲染主线程取出消息队列中的渲

005-第一代光电小工具(一)

第一代光电小工具(一)文章目录第一代光电小工具(一)项目介绍大致原理描述核心控件QCustomPlot关于QCustomPlot播放音频软件截图关键字:Qt、Qml、QCustomPlot、曲线、SQLite项目介绍欢迎来到我们的QML&C++项目!这个项目结合了QML(QtMeta-ObjectLanguage)和C

Pluma 插件管理框架

1.概述Pluma是一个用C++开发的可用于管理插件的开源架构,其官网地址为:http://pluma-framework.sourceforge.net/。该架构是个轻量级架构,非常易于理解。Pluma架构有以下基本概念:1)插件的外在行为体现为一个纯虚类,可以叫作插件接口;2)继承于同一个插件接口的若干派生类,被认

异地远程访问本地SQL Server数据库【无公网IP内网穿透】

文章目录1.前言2.SeaFile云盘设置2.1Owncould的安装环境设置2.2SeaFile下载安装2.3SeaFile的配置3.cpolar内网穿透3.1Cpolar下载安装3.2Cpolar的注册3.3Cpolar云端设置3.4Cpolar本地设置4.公网访问测试5.结语1.前言现在我们身边的只能设备越来越多

工作、生活常用免费api接口大全

手机号码归属地:提供三大运营商的手机号码归属地查询。全国快递物流查询:1.提供包括申通、顺丰、圆通、韵达、中通、汇通等600+快递公司在内的快递物流单号查询。2.与官网实时同步更新。3.自动识别快递公司。IP归属地-IPv4区县级:根据IP地址查询归属地信息,包含43亿全量IPv4,支持到中国地区(不含港台地区)区县级

弹跳小球-第15届蓝桥杯第一次STEMA测评Scratch真题精选

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第152讲。第15届蓝桥杯第1次STEMA测评已于2023年8月20日落下帷幕,编程题一共有6题,分别如下:行走的螃蟹飞驰的高铁旋转的正方体弹跳小球比较身高数据计算弹跳小球,本题是202

每天一道大厂SQL题【Day26】脉脉真题实战(二)活跃时长的均值

文章目录每天一道大厂SQL题【Day26】脉脉真题实战(二)活跃时长的均值每日语录第26题中级题:活跃时长的均值1.需求列表思路分析答案获取加技术群讨论附表文末SQL小技巧后记每天一道大厂SQL题【Day26】脉脉真题实战(二)活跃时长的均值大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据

测试用例设计底层逻辑

【软件测试行业现状】2023年了你还敢学软件测试?未来已寄..测试人该何去何从?【自动化测试、测试开发、性能测试】测试用例是每位测试人员都绕不开的话题,也是大家习以为常的事情。几乎所有测试相关的公众号、博客、专栏,都会提及测试用例,由此可见它的重要性。但是,有许多从业者,对测试用例的设计仍然依靠经验积累,即使知道用例要

热文推荐