上一篇我们简单介绍了如何安装和使用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. Python实现常用排序算法

    Python实现常用排序算法 冒泡排序 思路: 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完 ...

  2. P3366 【模板】最小生成树

    原题链接 https://www.luogu.org/problemnew/show/P3366 一道最小生成树的模板题...... 昨天刚学最小生成树,wz大佬讲的一塌糊涂井然有序,所以我们今天做起 ...

  3. python学习日记(常用模块)

    模块概念 什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代 ...

  4. [BJOI2019]光线(递推)

    [BJOI2019]光线(递推) 题面 洛谷 题解 假装玻璃可以合并,假设前面若干玻璃的透光率是\(A\),从最底下射进去的反光率是\(B\),当前的玻璃的透光率和反光率是\(a,b\). 那么可以得 ...

  5. 洛谷 P4714 「数学」约数个数和 解题报告

    P4714 「数学」约数个数和 题意(假):每个数向自己的约数连边,给出\(n,k(\le 10^{18})\),询问\(n\)的约数形成的图中以\(n\)为起点长为\(k\)的链有多少条(注意每个点 ...

  6. Ubuntu terminal colors

    Today I run ubuntu docker image on powershell and find the directory color is blue, so I want to cha ...

  7. opencv+codeblocks +anaconda

    study from : https://www.jianshu.com/p/c16b7c870356 #include <cstdio> #include <cstdlib> ...

  8. ref、out参数

    ref和out都是表示按引用传递.与指针类似,直接指向同一内存. 按值传递参数的方法永远不可能改变方法外的变量,需要改变方法外的变量就必须按引用传递参数. 传递参数的方法,在C语言里,用指针.在C#里 ...

  9. git最基础操作一

    1. 从远端克隆:git clone -b 克隆的分支 git的地址( eg:git clone -b master https://gitee.com/test/test.git ) 2.提交修改的 ...

  10. Kubernetes fluentd+elasticsearch+kibana

    前提:dns服务,k8s集群 下载kubernetes,并解压 https://github.com/kubernetes/kubernetes/releases tar zxvf kubernete ...