git操作实战指南
1 背景
小白进入公司,进入日常多人开发,git的使用应该是新人要掌握的第一个技能。git是一个分布式数据存储库,分为远程存储和本地存储,本地存储的话,每一台计算机就相当于一个存储数据库,可以记录和存储代码
2 使用
本文以IDEA的git工具操作为例,结合日常开发,讲解如何git开发。
2.1 情景1
小白进入公司后,上司对他说,今天数据一下代码哦。
小白说我就不(内心活动) 默默打开git图形操作界面, 克隆代码(真香操作)···
然后打开idea导入项目
在框图中可以看到目前小白在master分支 该分支一般是公司正式上线的分支,存储着正式上线的代码,因此小白接下来的一天就可以熟悉代码了(俗称摸鱼)。熟悉代码对开发着来说很重要,这是开发者的业务熟悉程度的具体表现,熟悉了代码以后写代码也方便,当然作为小白阅读别人的代码也可以学习其他的优秀的代码编写,学习借鉴。
2.2 情景2
新的一天开始了 小白有来到公司 上司对他说写个小需求吧
小白说我就不,默默打开IDEA(真香操作)
1.点击master分支,弹出窗口
2.点击new branch, 新建分支
3.命名为:日期+功能
效果图如下
说明:一定在mater分支,在最新的状态创建新的本地分支,为了确保是最新状态,一般点击
18年以上的版本才有。
然后小白就可以愉快的码代码了(不是摸鱼的一天)
2.3 情景3
小白完成代码编写了
这时候, 小白应该在本地分支commit代码,将代码存进暂存区,暂存区相当于本地仓库与远程仓库的中转站,在暂存区的代码可以扔掉
当idea提示完成后,就可以愉快切换分支了,此时要切换到test分支,test分支一般是公司的测试分支,用于测试工程师测试,代码经过测试开发者测试通过后,带可以将自己的代码merge(合并)到master分支
前面如果没有commit代码,就切换分支的话,会本地分支代码带到切换的分支,造成不必要的麻烦,影响合并操作,应当注意。
切换到新分支后,就可以合并代码了,将新建分支的代码合并到test分支,部署上线到测试环境。
然后就可以push代码了
2.4 情景4
测试告诉小白,测试通过
这时候,小白就可以切换到master分支,将自己新建的分支代码合并到master分支,操作参考在test分支合并新分支代码
3 建议
1.写代码一定在新分支或者自己的分支写,所以写代码之前要检查项目分支在哪里,不要在master或者test分支或者别人的分支写代码,影响代码合并
2.基于上一条,所以要胆大心细。
git操作实战指南的更多相关文章
- Git实战指南----跟着haibiscuit学Git(第一篇)
笔名: haibiscuit 博客园: https://www.cnblogs.com/haibiscuit/ Git地址: https://github.com/haibiscuit?tab=re ...
- 大数据存储:MongoDB实战指南——常见问题解答
锁粒度与并发性能怎么样? 数据库的读写并发性能与锁的粒度息息相关,不管是读操作还是写操作开始运行时,都会请求相应的锁资源,如果请求不到,操作就会被阻塞.读操作请求的是读锁,能够与其它读操作共享,但是当 ...
- 《SDN核心技术剖析和实战指南》2.3 OF-CONFIG配置管理协议小结
OpenFlow协议定义了交换机和控制器交换数据的方式和规范,但并没有定义如何配置和管理必需的网络参数和网络资源,OF-CONFIG的提出就是为了对OpenFlow提供配置管理支持.如下图所示,OF- ...
- 有奖试读—Windows PowerShell实战指南(第2版)
为什么要学PowerShell? Windows用户都已习惯于使用图形化界面去完成工作,因为GUI总能轻易地实现很多功能,并且不需要记住很多命令.使得短时间学会一种工具成为可能. 但是不幸的是,GUI ...
- Apache Beam实战指南 | 手把手教你玩转KafkaIO与Flink
https://mp.weixin.qq.com/s?__biz=MzU1NDA4NjU2MA==&mid=2247492538&idx=2&sn=9a2bd9fe2d7fd6 ...
- 《SQLSERVER2012实施与管理实战指南》前4章节笔记内容
<SQLSERVER2012实施与管理实战指南>前4章节笔记内容 <SQLSERVER2012实施与管理实战指南>的前面4章是<SQLSERVER企业级平台管理实践> ...
- Java多线程编程实战指南(核心篇)读书笔记(五)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76730459冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
- Java多线程编程实战指南(核心篇)读书笔记(三)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76686044冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
- Java多线程编程实战指南(核心篇)读书笔记(二)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76651408冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
随机推荐
- xgboost调参
The overall parameters have been divided into 3 categories by XGBoost authors: General Parameters: G ...
- ReactNavtive框架教程(3)
原文:http://www.raywenderlich.com/99473/introducing-react-native-building-apps-javascript 注意:全部图片放在了百度 ...
- Invocation of destroy method failed on bean with name ‘XXXX’
项目启动报错问题:Invocation of destroy method failed on bean with name 'scopedTarget.eurekaClient': org.spri ...
- docker save docker load
docker save && docker load docker save 镜像1 镜像2 | gzip > images.tar.gz 打包镜像为压缩文件 docker sa ...
- python实现QQ机器人(自己主动登录,获取群消息,发送群消息)
一次偶然的机会我看见了一个群里的一个QQ号总是依据你所发的消息自己主动回复,当时非常感觉到奇妙.我知道能够模拟登录站点,没想到居然也能模拟登录QQ,首先自己想到的就是怎样实现模拟登录PC端的QQ, 開 ...
- Android Auto Scroll ViewPager (Smooth)
项目信息 项目地址 https://github.com/benniaobuguai/android-auto-scroll-viewpager 特性 支持自动平滑切换海报.相册等,无限次循环轮播 手 ...
- C++中的链式操作
代码编译环境:Windows7 32bits+VS2012. 1.什么是链式操作 链式操作是利用运算符进行的连续运算(操作).它的特点是在一条语句中出现两个或者两个以上相同的操作符,如连续的赋值操作. ...
- Linux编程---进程通信
Linux的通信方式主要有分类有以下几种: -匿名管道和FIFO有名管道 -消息队列,信号量和共享存储 -套接字 对于套接字的进程通信,我就留在套接字的文章中再写了. 一.管道 管道是最古老的进程通信 ...
- Handler之IdleHandler
MessageQueue提供了另一类消息,IdleHandler 如果返回false,每次轮询都会调用(理论上应该可以做一些别的东西) Looper.myQueue().addIdleHandler( ...
- VUE 之 JS指令
1.v-text的用法: 2.v-html 3.v-for 4.v-if , v-else if ,v-else v-if 每次生成都只有一个标签,即符合条件的标签. 5.v-show v-show ...