上一篇我们简单介绍了如何安装和使用git,本次将简单介绍如何创建分支、处理冲突、提交与回滚

创建和合并分支是Git的一大特色。

使用场景:当有一个新功能要开发,但是又没有确定上线时间,不能合并到主干上。这时候我们就可以创建一个新的分支

一:创建分支

  1.1 基于master分支创建分支

  1.2 将创建的新分支推送到远程服务器上

  1.3 假设现在新增了一个学生管理的功能

  1.4 推送成功后,继续修改这个文件

  1.5 此时master和develop分支情况如下,

  这是如果需要测试,就把Develop上的内容发布到测试环境进行测试,测试通过以后确认上线,这时候就要进行分支合并了。

二、解决冲突

  代码冲突多指:两个用户,同时操作同一个文件。例如同是“学生管理”,一个开发人员进行新增功能,另外一个人员进行删除功能。

这时候,你就可以看到两个冲突的文件了。我们利用外部的比对工具

三、部分提交。

  sourceTree的另一个功能是就是可以提交一个文件的部分内容。比如还是以“学生管理”文件为例。分别开发了对学生信息的增、删、改。现在上线要求只需要上线修改功能就可以。

提交后,并推送到远程服务器上的对应分支。

四:代码回滚,

  1:文件比较少,或者提交错位的文件比较少

  2:也可以直接还原整次提交过程,右击“回滚提交”,

  3:除了可以回滚最新的这个版本,还可以还原到某一版本上

  例如,在学生文件中依次添加两条数据(张三、李四)。现在发现数据的年龄都不对需要还原到学生数据为空的状态

五、主干上合并某一次提交。例如master上只需要获取学生信息的添加学生李四这一次功能

就可实现,只在分支上的某一个功能

六、在Gogs上发送合并请求

1:合并分支前 主、分干代码情况

2:修改完代码,并推送到分支的远程服务器

3:创建合并请求

4:确认分支,创建合并请求

5:开发经理登录,找到对应的请求

6:开发经理CodeReview

7:分支修改完未合并前 主、分支代码情况

8:确认无误后,同意合并

9、分支合并后,代码情况

集腋成裘-13-git使用-02进阶篇的更多相关文章

  1. Git快速入门进阶篇

    本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...

  2. git的使用(进阶篇)

    如何处理代码冲突 冲突合并一般是因为自己的本地做的提交和服务器上的提交有差异,并且这些差异中的文件改动,Git不能自动合并,那么就需要用户手动进行合并 如我这边执行git pull origin ma ...

  3. 02: tornado进阶篇

    目录:Tornado其他篇 01: tornado基础篇 02: tornado进阶篇 03: 自定义异步非阻塞tornado框架 04: 打开tornado源码剖析处理过程 目录: 1.1 自定制t ...

  4. 02:Django进阶篇

    目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...

  5. 前端开发工程师 - 02.JavaScript程序设计 - 第2章.进阶篇

    第2章--进阶篇 类型进阶 类型: Undefined Null Boolean String Number Object 原始类型(值类型):undefined, null, true, " ...

  6. 2.git进阶篇总结

    阅读 Git 原理详解及实用指南 记录 进阶 1 - HEAD.master 与 branch: 介绍了 Git 中的一些「引用」:HEAD.master.branch.这里总结一下: HEAD 是指 ...

  7. Python开发【第七篇】:面向对象 和 python面向对象进阶篇(下)

    Python开发[第七篇]:面向对象   详见:<Python之路[第五篇]:面向对象及相关> python 面向对象(进阶篇)   上一篇<Python 面向对象(初级篇)> ...

  8. ESP8266进阶篇

    ESP8266进阶篇 20170225(应需要,继续使用此模块!!!) 说一下如何通过内网和外网来控制我的ESP8266的数据模块 1.内网控制:(要求手机直接连接在ESP8266的WIFI上面,使用 ...

  9. Sass进阶之路,之二(进阶篇)

    Sass之二(进阶篇) 1. 数据类型 1.1 Number 数字类型,小数类型,带有像素单位的数字类型,全部都属于Number类型 Number类型详情请点击这里,下面是小例子 1.$n1: 1.2 ...

随机推荐

  1. <TCP/IP原理> (四) IP编址

    1.IP地址的基本概念:作用.结构.类型 2.特殊地址:作用.特征 网络地址.广播地址(直接.受限) 0.0.0.0 环回地址 3.单播.多播.广播地址:特征 4.专用地址:作用.范围 5.计算和应用 ...

  2. h5实现本地图片或文件的上传

    首先放一个今天学到的小demo: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  3. 贝叶斯A/B测试 - 一种计算两种概率分布差异性的方法过程

    1. 控制变量 0x1:控制变量主要思想 科学中对于多因素(多变量)的问题,常常采用控制因素(变量)的方法,吧多因素的问题变成多个单因素的问题.每一次只改变其中的某一个因素,而控制其余几个因素不变,从 ...

  4. WebApi系列(从.Net FrameWork 到 .Net Core)

    一. 简介  1. 什么是WebApi? WebApi是一个很广泛的概念,在这里我们特指.Net平台下的Asp.Net WebApi框架,它是针对各种客户端(浏览器.APP等)来构建Http服务的一个 ...

  5. jquery script两个属性

    今天使用jquery cdn时发现多了两个属性. <script   src="http://code.jquery.com/jquery-2.2.4.min.js"   i ...

  6. JavaScript中的alert()与console.log()的区别

    1.alert() [1.1]有阻塞作用,不点击确定,后续代码无法继续执行 [1.2]alert()只能输出string,如果alert输出的是对象会自动调用toString()方法 e.g. ale ...

  7. Linux基础系统优化及常用命令

    # Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...

  8. Linux基础 - 基本命令

    一.Linux系统命令操作语法格式 二.目录操作 创建目录 查看目录 改变当前的目录/位置 打印当前工作目录 三.创建文件或者修改文件时间戳(文件属性) 四.stat命令 vim 查看文件内容 mor ...

  9. subset_lat_dir.sh

    #!/bin/bash     # Copyright 2018 Jarvan Wang # Copyright 2017 Vimal Manohar # Apache 2.0.     cmd=ru ...

  10. class和style属性

    值类型: 1.表达式计算出的字符串结果或者字符串. 2.对象(表达式或者对象名,建议采用对象名) key为className,值的真假控制这个name的有无. //class <div v-bi ...