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上来。

相关推荐
椰壳也可1 小时前
06_作业基于CubeMx实现按键控制LED灯(裸机)(立芯嵌入式笔记)
笔记·stm32·学习
songyuc2 小时前
【Git】请帮忙解释一下“git reset”
git·elasticsearch
im_AMBER2 小时前
Leetcode 52
笔记·学习·算法·leetcode
菜鸟‍4 小时前
【前端学习】阿里前端面试题
前端·javascript·学习
wdfk_prog4 小时前
[Linux]学习笔记系列 -- [kernel]kallsyms
linux·笔记·学习
!chen5 小时前
CPP 学习笔记 语法总结
c++·笔记·学习
Komorebi_99995 小时前
使用Git创建自己的分支的操作指南
git
现在,此刻5 小时前
李沐深度学习笔记D3-线性回归
笔记·深度学习·线性回归
d111111111d7 小时前
STM32外设学习--DMA直接存储器读取(AD扫描程序,DMA搬运)--学习笔记。
笔记·stm32·单片机·嵌入式硬件·学习
labview_自动化7 小时前
GitHub笔记
笔记·github