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操作实战指南的更多相关文章

  1. Git实战指南----跟着haibiscuit学Git(第一篇)

    笔名:  haibiscuit 博客园: https://www.cnblogs.com/haibiscuit/ Git地址: https://github.com/haibiscuit?tab=re ...

  2. 大数据存储:MongoDB实战指南——常见问题解答

    锁粒度与并发性能怎么样? 数据库的读写并发性能与锁的粒度息息相关,不管是读操作还是写操作开始运行时,都会请求相应的锁资源,如果请求不到,操作就会被阻塞.读操作请求的是读锁,能够与其它读操作共享,但是当 ...

  3. 《SDN核心技术剖析和实战指南》2.3 OF-CONFIG配置管理协议小结

    OpenFlow协议定义了交换机和控制器交换数据的方式和规范,但并没有定义如何配置和管理必需的网络参数和网络资源,OF-CONFIG的提出就是为了对OpenFlow提供配置管理支持.如下图所示,OF- ...

  4. 有奖试读—Windows PowerShell实战指南(第2版)

    为什么要学PowerShell? Windows用户都已习惯于使用图形化界面去完成工作,因为GUI总能轻易地实现很多功能,并且不需要记住很多命令.使得短时间学会一种工具成为可能. 但是不幸的是,GUI ...

  5. Apache Beam实战指南 | 手把手教你玩转KafkaIO与Flink

    https://mp.weixin.qq.com/s?__biz=MzU1NDA4NjU2MA==&mid=2247492538&idx=2&sn=9a2bd9fe2d7fd6 ...

  6. 《SQLSERVER2012实施与管理实战指南》前4章节笔记内容

    <SQLSERVER2012实施与管理实战指南>前4章节笔记内容 <SQLSERVER2012实施与管理实战指南>的前面4章是<SQLSERVER企业级平台管理实践> ...

  7. Java多线程编程实战指南(核心篇)读书笔记(五)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76730459冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  8. Java多线程编程实战指南(核心篇)读书笔记(三)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76686044冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  9. Java多线程编程实战指南(核心篇)读书笔记(二)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76651408冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

随机推荐

  1. xgboost调参

    The overall parameters have been divided into 3 categories by XGBoost authors: General Parameters: G ...

  2. ReactNavtive框架教程(3)

    原文:http://www.raywenderlich.com/99473/introducing-react-native-building-apps-javascript 注意:全部图片放在了百度 ...

  3. Invocation of destroy method failed on bean with name ‘XXXX’

    项目启动报错问题:Invocation of destroy method failed on bean with name 'scopedTarget.eurekaClient': org.spri ...

  4. docker save docker load

    docker save && docker load docker save 镜像1 镜像2 | gzip > images.tar.gz 打包镜像为压缩文件 docker sa ...

  5. python实现QQ机器人(自己主动登录,获取群消息,发送群消息)

    一次偶然的机会我看见了一个群里的一个QQ号总是依据你所发的消息自己主动回复,当时非常感觉到奇妙.我知道能够模拟登录站点,没想到居然也能模拟登录QQ,首先自己想到的就是怎样实现模拟登录PC端的QQ, 開 ...

  6. Android Auto Scroll ViewPager (Smooth)

    项目信息 项目地址 https://github.com/benniaobuguai/android-auto-scroll-viewpager 特性 支持自动平滑切换海报.相册等,无限次循环轮播 手 ...

  7. C++中的链式操作

    代码编译环境:Windows7 32bits+VS2012. 1.什么是链式操作 链式操作是利用运算符进行的连续运算(操作).它的特点是在一条语句中出现两个或者两个以上相同的操作符,如连续的赋值操作. ...

  8. Linux编程---进程通信

    Linux的通信方式主要有分类有以下几种: -匿名管道和FIFO有名管道 -消息队列,信号量和共享存储 -套接字 对于套接字的进程通信,我就留在套接字的文章中再写了. 一.管道 管道是最古老的进程通信 ...

  9. Handler之IdleHandler

    MessageQueue提供了另一类消息,IdleHandler 如果返回false,每次轮询都会调用(理论上应该可以做一些别的东西) Looper.myQueue().addIdleHandler( ...

  10. 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 ...