集腋成裘-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 ...
随机推荐
- 为知笔记Linux版编译使用记录
本文档长期不定时更新,根据使用情况进行反馈. 目录 编译 Error creating SSL context 无法输入中文 如何打包使用 桌面图标 Markdown Windows 版本差异 常用快 ...
- SpringMvc如何获取请求头请求体的消息
对接第三方服务,说传递的POST请求中,Request Header中有需要的参数,Request Body为XML格式,包括创建消息正文和属性. 刚开始我以为可以通过 HttpServletRequ ...
- nsx-edge虚拟机抓包实践
Edge抓包 今天在客户端进行故障排除时,我需要在环境中的一个边缘服务网关上执行包捕获.在诊断一系列不同的问题时,执行包捕获通常非常有用. 要启动包捕获,您可以跳到ESG的控制台,或者像我在本例中所做 ...
- [LVM]创建LVM卷
https://www.cnblogs.com/softidea/p/5147090.html
- POJ2975 Nim 【博弈论】
DescriptionNim is a 2-player game featuring several piles of stones. Players alternate turns, and on ...
- 简易RPC
暴露服务: package com.saiarea; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; impo ...
- Linux-Jenkins安装部署
Jenkins 安装及插件安装 Jenkins简介: Jenkins只是一个平台,真正运作的都是插件.这就是jenkins流行的原因,因为jenkins什么插件都有 Hudson是Jenkins的前身 ...
- 深入理解JVM(6)——Java内存模型和线程
Java虚拟机规范中定义了Java内存模型(Java Memory Model,JMM)用来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果(“即Ja ...
- 指路Reactive Programming
指路Reactive Programming Mar 02, 2016 in Engineering 我在工作中采用Reactive Programming(RP)已经有一年了,对于这个“新鲜”的辞藻 ...
- Redis实现排行榜功能(实战)
需求前段时间,做了一个世界杯竞猜积分排行榜.对世界杯64场球赛胜负平进行猜测,猜对+1分,错误+0分,一人一场只能猜一次.1.展示前一百名列表.2.展示个人排名(如:张三,您当前的排名106579). ...