资料来源

(1) https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA%E4%B8%8E%E5%90%88%E5%B9%B6

场景

(1) 由master分支切换到新创建分支branch1,并在branch1上做过修改并提交;

(2) 需要对项目打些补丁,但这些改动不需要和branch1的问题混在一起处理;

注1:这种情况下,需要从branch1切换到master,然后新建一个分支branch2,做对项目打补丁的工作;

1.分支创建与切换-git checkout -b 分支名

(1) git checkout -b branch1

(2) git checkout master

注1:在从branch1切换到master之前,需要保证branch1上所做的修改都已经提交;

(3) git checkout -b branch2

2.分支合并-git merge

(1) 当branch2的改动完成后,可以切换到master分支,并执行合并操作,即git checkout master, git merge branch2;

(2) 将分支branch2合并到master分支后,可以删掉branch2,即执行git branch -d branch2;

(3) 接着,可以切换到branch1,继续分支branch1的工作,即执行git checkout branch1;

注1:此时,branch2分支上所做的工作并没有包含到branch1分支中那个,可以使用git merge master命令将master分支合并入branch1分支,也可以等branch1分支完成后,将branch1合并到master分支;

(4) branch1分支工作完成后,提交,然后切换到master分支,即执行git checkout master;

(5) 将branch1分支上的改动合并到master分支,即git merge branch1;

注1:步骤(5)中,master分支所在提交并不是branch1分支所在提交的直接祖先,这种情况下,git会做一个简单的三方合并,其中的三方为当前master分支所在提交, 当前branch1分支所在提交以及master与branch1分支的共同祖先;

(6) 将branch1分支合并到master分支后,可以删掉branch1,即git branch -d branch1;

3.遇到冲突时的分支合并

注1:如果在两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,git不能干净的合并它们;

注2: 在存在合并冲突的情况下,可以使用git status查看那些因包含合并冲突而处于未合并状态(unmerged)的文件;

注3: git会在有冲突的文件中加入标准的冲突解决标记"<<<<"与">>>>",可以打开这些包含冲突的文件,手动解决冲突;

(1) 手动解决冲突;

(2) 对解决掉冲突的文件执行git add操作;

(3) 执行git status确认所有的合并冲突都已经被解决;

(4) 执行git commit操作完成合并并提交;

【git】3.2git分支-分支的新建与合并的更多相关文章

  1. SourceTree使用详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决)

    前言: 俗话说的好工欲善其事必先利其器,Git分布式版本控制系统是我们日常开发中不可或缺的.目前市面上比较流行的Git可视化管理工具有SourceTree.Github Desktop.Tortois ...

  2. 3.2 Git 分支 - 分支的新建与合并

    分支的新建与合并 现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程: 开发某个网站. 为实现某个新的需求,创建一个分支. 在这个分支上开展工作. 假设此时,你突然接到一个 ...

  3. [转] Git 分支 - 分支的新建与合并

    http://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA%E ...

  4. Git 分支 - 分支的新建与合并

    转载自:https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB ...

  5. .2 Git 分支 - 分支的新建与合并

    分支的新建与合并 https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0% ...

  6. Git 分支 - 分支的新建

    https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA% ...

  7. git 本地分支与远程分支 新建/删除/合并

    github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pull origin dev 本地分支与远程分支相关联 在本地 ...

  8. git 使用详解(9)-- 分支的新建与合并 git branch -d、merge、 --merged/--no-merged/-v

    现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程: 开发某个网站. 为实现某个新的需求,创建一个分支. 在这个分支上开展工作. 假设此时,你突然接到一个电话说有个很严重的 ...

  9. Git 系列教程(12)- 分支的新建与合并

    实际工作场景 可能会遇到的工作流 开发某个网站 为实现某个新的用户需求,创建一个分支 在这个分支上开展新工作 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补,你将按照如下方式来处理: 切换 ...

  10. Git (13) -- Git 分支 -- 分支的新建与合并

    @ 目录 0.准备工作 1.新建分支 一个简单提交历史: 创建一个新分支指针: iss53 分支随着工作的进展向前推进: 基于 main 分支的紧急问题分支 hotfix branch: main 被 ...

随机推荐

  1. Vulhub 漏洞学习之:Django

    Vulhub 漏洞学习之:Django 目录 Vulhub 漏洞学习之:Django 1 Django debug page XSS漏洞(CVE-2017-12794) 1.1 漏洞利用过程 2 Dj ...

  2. Android病毒分析基础(二)—ChatGPT提问技巧

    今天我们来用最近比较火的"ChatGPT"学习一下Android病毒分析基础,看看和我们之前学的有什么不同,又能学习到什么新的东西,同时了解一下"ChatGPT" ...

  3. Linux新手渣渣上路史

    Linux新手渣渣上路史 时至2022年,IT行业的迅速发展大家也有目共睹,IT行业在社会的发展中起着举足轻重的作用.其中一角Linux系统,从诞生到开源,再到现在受大众的欢迎,是一个很好的例子.Li ...

  4. Springboot2.0解决跨域问题

    解决办法: import org.springframework.context.annotation.Configuration; import org.springframework.web.se ...

  5. python 自动化 代码操作数据库

    import pymysql from pymysql import connect con=pymysql.connect(host='localhost',port=3306,database=' ...

  6. python实现WPS文件转PDF

    实现WPS文件转PDF,需要安装金山WPS import os from win32com.client import Dispatch def wps_et_to_pdf(file, pdf_fil ...

  7. Mac新手必看Mac入门基本知识图文教程

    你已经是Mac的用户了吗?还是准备入手的新手呢? 赶快看看"Mac入门基本知识"吧! macbook系统基础内容简介 Mac入门基本知识 1.主界面结构图基本知识介绍(如图所示) ...

  8. tool/js - ChineseToPinyin 汉语转拼音

    tool/js - ChineseToPinyin 汉语转拼音 Convert_Pinyin.js js如何简单实现汉字转成拼音的功能 pinyin-pro 官网 npm npm 安装 npm ins ...

  9. dayjs取 本周、上周、本月、上月、本季度、上季度时间段

    let dateTimes = [ { id: 1, name: '本周', start_time: dayjs().startOf('week').add(1, 'day').format('YYY ...

  10. 【SSO单点系列】(7):CAS4.0 二级域名

    CAS4.0 二级域名 一.描述 当cas成功登录后如果访问同一域名下的资源是 被当作同一应用下资源不需要再次请求登录,但是如果二级域名不同会 被当作不同应用在访问 需要请求CAS 在请求时会把TGC ...