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. 【Todo】Java Callable和Future学习

    参考这篇文章:http://blog.csdn.net/ghsau/article/details/7451464  还有一个系列<Java多线程>

  2. linux 配置maven环境变量

    vi /etc/profile 按照如下样例编辑环境变量. 编辑之后记得使用source /etc/profile命令是改动生效. 5.验证结果 在任意路径下执行mvn -version验证命令是否有 ...

  3. Serial attached SCSI

    http://en.wikipedia.org/wiki/Serial_attached_SCSI Serial attached SCSI From Wikipedia, the free ency ...

  4. FSB总线、HT总线、QPI总线、DMI总线

    http://wenku.baidu.com/link?url=d0NQFyvVpU--FpQUIjkPcdE036riitKgKib3385qr7VdB1oNUcIDpRndY-HH4ITjzJln ...

  5. Visual Studio自动生成文件版本信息

    一.     前言 通常,要控制输出文件的版本信息,只需要手动修改资源rc文件中的Version,即可在输出文件的文件属性里查看到对应的版本信息.如下图:    但是,版本号是会随时都更新的,每次bu ...

  6. Spring中的AOP(学习笔记)

    是什么AOP及实现方式 AOP的基本概念 Schema-base AOP Spring AOP API AspectJ

  7. A Practical Introduction to Blockchain with Python

    A Practical Introduction to Blockchain with Python // Adil Moujahid // Data Analytics and more http: ...

  8. a column-oriented DBMS

    https://clickhouse.yandex/docs/en/introduction/what_is_clickhouse.html

  9. webservice client setTimeOut

    一:eclipse生成的client,基于axis client_sub.getOptions().setTimeOutInMilliSeconds(1000*60); client_sub表示一个客 ...

  10. Session Timeout 与 $.ajaxSetup

    对于session过期跳转的问题,很简单,就是一个过滤器,然后判断session为空?跳转:继续.但是对于ajax的请求,需要做特殊处理,见下面代码中的 // 此处考虑ajax操作session过期的 ...