1.git简介与总结
GIT是一个开源的分布式管理控制系统,可以敏捷高效的处理任何项目。
首先是为什么要去使用git,举一个通俗易懂的例子来说:你写一个文档,老板一直让你改,这时笨的人会在原文档上直接改,聪明一点的会复制一下原文档,在副本上修改,这时老板说你的第三版比较好,笨的人煞笔了。。,聪明一点的就直接拷贝了第三版给客户发过去了。然后聪明一点的认为这次的事情完事了把其他没用的都删了,突然有一天老板说客户的意见和你最后一版的相同,这时聪明一点的人也煞笔了。。。。
这时来了个最聪明的人,会用git,他在本地建了一个版本库,每次老板让他修改,他就把之前的版本提交一下,并标明这版的主要特点,这样文件夹里就只有一个文档,每次老板说要那个版本的,他就直接从版本库里恢复一下。
Git工作的流程图
Workspace:工作区
Index/Stage:暂存区
Repository:仓库区(本地仓库)
Remote:远程仓库
远程仓库:Github、Gitee、GitLab等(个人建议Gitee,这是国内的,github时常会访问不到,但是Github是真的香,开源加白嫖)。
既然有了工作流程图,那么操作流程也一目了然。在你编译器上的代码叫工作区,你需要将代码先commit(提交)到本地,然后去push到你的远程仓库。
既然是版本控制,那就不能只是简单的push和clone,所以还有一个最基本的功能就是分支,每个
分支就是你的子版本,每个程序中有一个master分支是主分支。你可以通过去切换分支去访问不同的版本,但是切换分支之前需要先commit到本地仓库,否则会丢失本地仓库数据。
因为公司的项目不会是一个人去开发,是很多人去共同开发,所以提交或者合并同一个分支时可能会产生冲突,这需要你去判断留哪一部分代码。
2.Jenkins简介与总结
1.传统的瀑布模型满足不了现在软件的需求
- 功能不明确
- 变化非常频繁
2.敏捷开发
将产品尽快的上线,用户有一定的反馈。
频繁的发布和部署会占用大量的时间,所以需要一个可视化和可管理化软件工具去代替人工部署和发布——jenkins。
3.Jenkins是啥
当你代码写完之后想要提交,会有git(版本控制)、JUnit(单元测试)、sonaroube(代码质量检测)、Nexus(管理maven仓库的依赖)、maven(项目构建)、gitlab(代码管理)等操作。
而Jenkins就像是一条流水线,上面的工具就像是流水线上的工人,当Jenkins运行时,流水线就会启动,工人就会开始干活。
所以当你的代码提交的时候,其他操作Jenkins会帮你启动,以此来降低发布和部署的时间。