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

相关推荐
洛小豆18 小时前
Git打标签仓库看不到?她说:豆子,你又忘了加 --tags!
git·后端·github
Yurko1318 小时前
【C语言】环境安装(图文)与介绍
c语言·开发语言·学习
十安_数学好题速析18 小时前
数论探秘:如何用模4思想破解平方数谜题
笔记·学习·高考
cmc102819 小时前
127.XIlinx fpga端的pcie(XDMA)与驱动是如何交换数据的
笔记·fpga开发
optimistic_chen19 小时前
【Java EE进阶 --- SpringBoot】Mybatis操作数据库(基础二)
xml·数据库·spring boot·笔记·java-ee·mybatis
在繁华处19 小时前
C语言初步学习:数组的增删查改
c语言·数据结构·学习
呵呵哒( ̄▽ ̄)"19 小时前
专项智能练习(科尔伯格道德发展阶段理论)
学习
摇滚侠19 小时前
Spring Boot 3零基础教程,properties文件中配置和类的属性绑定,笔记14
java·spring boot·笔记
武文斌7720 小时前
项目学习总结:CAN总线、摄像头、STM32概述
linux·arm开发·stm32·单片机·嵌入式硬件·学习·c#
程序员大雄学编程20 小时前
「机器学习笔记12」支持向量机(SVM)详解:从数学原理到Python实战
笔记·机器学习·支持向量机