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. C#中Queue&lt;T&gt;类的使用以及部分方法的源代码分析

    Queue<T>类 表示对象的先进先出集合. 队列在按接收顺序存储消息方面很实用,以便于进行顺序处理. 存储在 Queue,<T> 中的对象在一端插入,从还有一端移除. Que ...

  2. sort-list——链表、快慢指针找中间、归并排序

    Sort a linked list in O(n log n) time using constant space complexity. 链表,快慢指针找中点,归并排序. 注意判断条件fast-& ...

  3. 【LeetCode从零单排】No 114 Flatten Binary Tree to Linked List

    题目 Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 ...

  4. docker compose环境搭建

    概述 Docker Compose提供一个简单的基于YAML配置语言.用于描写叙述和组装多容器的分布式应用. 使用docker定义和执行复杂的应用.使用compose,能够在一个文件中,定义多容器的应 ...

  5. 第六十题(在O(1)时间内删除链表结点)

    题目:给定链表的头指针和一个结点指针,在O(1)时间删除该结点. 思路:将待删除节点下一个节点的数据赋给当前节点.删除下一个节点就可以.

  6. 作为iOS程序员,最核心的60%能力有哪些?

    作为iOS程序员,最核心的60%能力有哪些?   一个合格的iOS程序员需要掌握多少核心技能?你和专业的开发工程师的差距有多大?你现在的水平能开发一个功能完整性能高效的iOS APP吗?一起来看看下面 ...

  7. Alert提示框之后跳转指定页面

    <li onclick="closes();">BTC</li> alert跳转到指定页面 <script type="text/javas ...

  8. c++学习笔记之基础---类内声明函数后在类外定义的一种方法

    在C++的“类”中经常遇到这样的函数, 返回值类型名 类名::函数成员名(参数表){ 函数体.} 双冒号的作用 ::域名解析符!返回值类型名 类名::函数成员名(参数表) { 函数体. } 这个是在类 ...

  9. iOS 7的手势滑动返回

    如今使用默认模板创建的iOS App都支持手势返回功能,假设导航栏的返回button是自己定义的那么则会失效,也能够參考这里手动设置无效. if ([self.navigationController ...

  10. HDU 6143 Killer Names DP+快速密

    Killer Names Problem Description > Galen Marek, codenamed Starkiller, was a male Human apprentice ...