Git 学习笔记 | Git 分支

Git 学习笔记 | Git 分支

Git 学习笔记 | Git 分支

分支的概念

几乎所有的版本控制系统都以某种形式支持分支。

使用分支意味着你可以把你的工作从开发主线上分离开来,避免影响开发主线。

多线程开发,可以同时开启多个任务的开发,多个任务之间互不影响。

为什么要使用分支?

单线程开发:

多线程开发:

思考如下现象:

10.1日业务部门提出需求:明年元旦3天做2个促销活动

  1. 12.31 号上线活动1
  2. 1.4号上线活动2,同时 要求撤销活动1

你所在部门领导为了保证能顺利完成,要求 11.15 号完成上述连个功能的开发工作

此时作为开发人员要面临两个文件:活动1 的代码,即要存在(12.31 要用)又要不存在(1.4 号要求删除),我们怎么做?

显然比较棘手,如果使用分支(可以理解为将代码复制一份)将很好解决。

常用指令

Git 分支中常用指令:

列出所有本地分支:

复制代码
git branch

列出所有远程分支:

复制代码
git branch -r

新建一个分支,但依然停留在当前分支:

复制代码
git branch [branch-name]

新建一个分支,并切换到该分支:

复制代码
git checkout -b [branch]

合并指定分支到当前分支:

复制代码
git merge [branch]

删除分支:

复制代码
git branch -d [branch-name]

删除远程分支:

复制代码
git push origin --delete [branch-name]
git branch -dr [remote/branch]

如果同一个文件在合并分支时都被修改了则会引起冲突。

解决的办法是我们可以修改冲突文件后重新提交,选择保留其中一份代码。

一般的做法:

master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作。

工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。

相关推荐
e***74953 小时前
Spring Security 官网文档学习
java·学习·spring
山河亦问安6 小时前
Spring原理编码学习
java·学习·spring
思成不止于此6 小时前
【C++ 数据结构】二叉搜索树:原理、实现与核心操作全解析
开发语言·数据结构·c++·笔记·学习·搜索二叉树·c++40周年
碧海潮生_CC7 小时前
【CUDA笔记】03 CUDA GPU 架构与一般的程序优化思路(下)
笔记·架构·cuda
钟屿8 小时前
Back to Basics: Let Denoising Generative Models Denoise 论文阅读学习
论文阅读·人工智能·笔记·学习·计算机视觉
d111111111d8 小时前
SPI通信协议--在STM32中介绍(学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习
愚昧之山绝望之谷开悟之坡8 小时前
业务接待-公务接待-商务接待
笔记
断水客8 小时前
如何在手机上搭建Linux学习环境
linux·运维·学习
5***a9759 小时前
Git虚拟现实案例
git·vr
牛奔9 小时前
git 清理未跟踪文件
git