上一篇我们简单介绍了如何安装和使用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. 关于Vue修改默认的build文件存放的dist路径

    原文地址:http://www.cnblogs.com/JimmyBright/p/7681086.html Vue默认build路径是项目的dist目录下,有时候我们可能希望build之后的文件自动 ...

  2. UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)

  3. 20165223 《信息安全系统设计基础》 stat命令的实现-mysate

    学习使用stat(1),并用C语言实现                1. 提交学习 stat(1) 的截图                2. man -k ,grep -r的使用          ...

  4. mysql 数据库表迁移复制

    1. 表结构相同的表,且在同一数据库(如,table1,table2) insert into table1 select * from table2 # 完全复制 insert into table ...

  5. DBCP 连接池

    DBCP数据源 DBCP 是 Apache 软件基金组织下的开源连接池实现 导入maven包: <!-- dbcp连接池 --> <dependency> <groupI ...

  6. 人生苦短,Let's Go目录

    目录 GO语言系列(一)- 初识go语言 GO语言系列(二)- 基本数据类型和操作符 Go语言系列(三)- 基础函数和流程控制 GO语言系列(四)- 内置函数.闭包与高级数据类型 GO语言系列(五)- ...

  7. netcore项目在Windows部署:使用NSSM部署Windows服务

    NSSM部署Windows服务 1 准备工作 在Windows平台部署Asp.net core应用程序一般采用IIS,但是如果我们的net core应用执行的是定时任务,需要开机自启,稳定运行的话,使 ...

  8. springboot集成freemarker静态资源无法访问

    如题配置文件加上 #设定静态文件路径,js,css等.static为你放置静态资源的文件夹名称,也可以叫别的名字.properties加上 spring.mvc.static-path-pattern ...

  9. centos7通过nginx搭建SSL

    今天给大家带来的是一篇关于通过nginx搭建HTTPS访问转跳后端HTTP的教程,部署方式如下: 安装基础组件yum -y isntall firewalldyum -y install gcc gc ...

  10. node服务端口被占用Error listen EADDRINUSE :::3000

    Error: listen EADDRINUSE: address already in use :::3000,出现这个报错说明3000端口被占用 解决方法:找到占用该端口的程序,kill杀掉它就可 ...