集腋成裘-13-git使用-02进阶篇
上一篇我们简单介绍了如何安装和使用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进阶篇的更多相关文章
- Git快速入门进阶篇
本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...
- git的使用(进阶篇)
如何处理代码冲突 冲突合并一般是因为自己的本地做的提交和服务器上的提交有差异,并且这些差异中的文件改动,Git不能自动合并,那么就需要用户手动进行合并 如我这边执行git pull origin ma ...
- 02: tornado进阶篇
目录:Tornado其他篇 01: tornado基础篇 02: tornado进阶篇 03: 自定义异步非阻塞tornado框架 04: 打开tornado源码剖析处理过程 目录: 1.1 自定制t ...
- 02:Django进阶篇
目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...
- 前端开发工程师 - 02.JavaScript程序设计 - 第2章.进阶篇
第2章--进阶篇 类型进阶 类型: Undefined Null Boolean String Number Object 原始类型(值类型):undefined, null, true, " ...
- 2.git进阶篇总结
阅读 Git 原理详解及实用指南 记录 进阶 1 - HEAD.master 与 branch: 介绍了 Git 中的一些「引用」:HEAD.master.branch.这里总结一下: HEAD 是指 ...
- Python开发【第七篇】:面向对象 和 python面向对象进阶篇(下)
Python开发[第七篇]:面向对象 详见:<Python之路[第五篇]:面向对象及相关> python 面向对象(进阶篇) 上一篇<Python 面向对象(初级篇)> ...
- ESP8266进阶篇
ESP8266进阶篇 20170225(应需要,继续使用此模块!!!) 说一下如何通过内网和外网来控制我的ESP8266的数据模块 1.内网控制:(要求手机直接连接在ESP8266的WIFI上面,使用 ...
- Sass进阶之路,之二(进阶篇)
Sass之二(进阶篇) 1. 数据类型 1.1 Number 数字类型,小数类型,带有像素单位的数字类型,全部都属于Number类型 Number类型详情请点击这里,下面是小例子 1.$n1: 1.2 ...
随机推荐
- 偏差-方差均衡(Bias-Variance Tradeoff)
众所周知,对于线性回归,我们把目标方程式写成:. (其中,f(x)是自变量x和因变量y之间的关系方程式,表示由噪音造成的误差项,这个误差是无法消除的) 对y的估计写成:. 就是对自变量和因变量之间的关 ...
- 博弈论中的Nim博弈
瞎扯 \(orzorz\) \(cdx\) 聚聚给我们讲了博弈论.我要没学上了,祝各位新年快乐.现在让我讲课我都不知道讲什么,我会的东西大家都会,太菜了太菜了. 马上就要回去上文化课了,今明还是收下尾 ...
- volatile&synchronized&diff
1. 三大性质简介 在并发编程中分析线程安全的问题时往往需要切入点,那就是两大核心:JMM抽象内存模型以及happens-before规则(在这篇文章中已经经过了),三条性质:原子性,有序性和可见性. ...
- C语言的函数指针数组(好绕啊~看完这篇估计就通关了)
转自https://www.cnblogs.com/chr-wonder/p/5168858.html int *(*p(int))[3] 今天有人问这个是啥?我一看直接就懵逼了…… 下面做一些简单的 ...
- 前端面试题整理—Node篇
1.node有哪些特征,与其他服务器端对比 特征:单线程.事件驱动.非阻塞I/O node 无法直接渲染静态页面,提供静态服务 node 没有根目录的概念 node 必须通过路由程序指定文件才能渲染文 ...
- webpack打包懒加载
lazyload https://webpack.js.org/guides/lazy-loading/ 懒加载 -- 按需加载. Lazy, or "on demand", lo ...
- JAVA集合1--总体框架
JAVA集合是JAVA提供的工具包,包含了常用的数据结构:集合.链表.栈.队列.数组.映射等.JAVA集合工具包的位置是java.util.* JAVA集合主要可以分为4个部分:List.Set.Ma ...
- requests 获取token
# encoding:utf-8 import reimport jsonimport randomfrom requests.sessions import Session class Regist ...
- Coursera, Big Data 4, Machine Learning With Big Data (week 3/4/5)
week 3 Classification KNN :基本思想是 input value 类似,就可能是同一类的 Decision Tree Naive Bayes Week 4 Evaluating ...
- VS 测试printf 多参数 输出 i++ 和++i 结果
代码如截图: 总结: printf 多参数中有运算时 是从右到左执行的: i++ 和 ++i 优先级是大于 赋值 =运算的: i++ 和++i 是平级的: i++ 先用在算,++i 先算在用: 从右往 ...