Git代码管理工具 — 4 Git分支详解

目录

1 Git 分支概念

2 Git 分支基本操作

2.1 git branch查看与创建本地分支

2.2 git checkout切换分支

2.3 git merge合并分支

2.4 删除分支

3 解决冲突


1 Git 分支概念

Git 分支允许你从当前开发线上分离出来,进行独立的开发工作,而不会影响主分支的稳定性,意味着多人协同开发而互不影响。

在开发中,一般有如下分支使用原则与流程:

  • master分支:线上分支,主分支,中小规模项目作为线上运行的应用对应的分支;
  • develop分支:是从master创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线要求,都可以在此版本进行开发,阶段开发完成后,需要是合并到master分支,准备上线。
  • feature/xxxx分支:从develop创建的分支,一般是同期并行开发,但不同期上线时创建的分支,分支上的研发任务完成后合并到develop分支。
  • hotfix/xxxx分支:从master派生的分支,一般作为线上bug修复使用,修复完成后需要合并到master、test、develop分支。

还有一些其他分支,在此不再详述,例如test分支(用于代码测试)、pre分支(预上线分支)等

等。

2 Git 分支基本操作

2.1 git branch查看与创建本地分支

  • 查看分支git branch命令会列出本地仓库的所有分支,当前分支前面会有一个星号 (*) 标记。

git branch

  • 创建分支:创建一个新分支,但不会自动切换到该分支。

git branch <branch-name>

查看与创建本地分支: 

2.2 git checkout切换分支

  • 切换分支: 切换到已存在的分支,如果分支不存在,Git会报错。

git checkout <branch-name>

  • 创建并切换分支: 创建一个新的分支并立即切换到该分支:

git checkout -b <new-branch-name>

  • 切换到最新的提交: 如果你想要切换到最新的提交,可以使用:

git checkout HEAD

  • 切换到上一个分支: 如果你想要切换回上一个使用的分支,可以使用:命令

git checkout -

git checkout <branch-name>命令由master分支切换到新建的dev01分支:

2.3 git merge合并分支

git merge 命令用于将两个分支的更改合并在一起,通常会将其他分支的更改合并回主分支(通常是 master )。

以下是一些 git merge 的常用用法:

  • 合并指定分支到当前分支: 在执行 git merge 之前,你需要切换到你想要更新的分支。比如,如果你想要更新主分支,你应该先切换到主分支:

先切换到主分支

git checkout master

然后其他分支合并进master分支

git merge feature-branch

  • 合并所有最新分支到当前分支: 如果你想要合并所有分支的最新更改到当前分支,可以使用:

git merge --octopus

  • 合并并关闭分支: 如果你想要合并一个分支并且删除它,可以使用 --squash 选项将所有更改合并为一个单一的提交:

git merge --squash feature-branch

使用git merge feature-branch命令将dev01分支合并到master分支,其中(HEAD -> master, dev01) 具体含义如下:

  • HEAD:HEAD是一个指针, 表示当前Git正在指向的提交对象

  • -> master: 这个箭头表示HEAD当前指向的是master分支。

  • dev01:进行合并操作后,将dev01分支的更改合并到了master分支。

2.4 删除分支

git branch -d 是Git命令的一个选项,用于删除已经完全合并的本地分支,这里的 -d 代表 --merged

  • 删除已合并分支:这个命令会删除名为 <branch-name> 的分支,前提是这个分支上的所有更改都已经合并到了当前分支。

git branch -d <branch-name>

  • 强制删除分支: 如果你想要删除一个分支,不管它是否已经完全合并,可以使用 -D 选项,它是 --delete --force 的简写:

git branch -D <branch-name>

使用git branch -d <branch-name>命令输出已经合并的dev01分支。

3 解决冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:

1)尝试合并: 当你尝试合并两个分支,如果存在冲突,Git会停止合并过程并告诉你哪些文件存在冲突。

2)查找冲突文件: 使用以下命令找出存在冲突的文件:

git status

3)手动解决冲突: 打开存在冲突的文件,Git会在冲突区域插入特殊的标记,需要手动编辑文件,决定保留哪个版本的文本,或者可能需要结合两个版本的内容。

4)将解决完冲突的文件加入暂存区: 使用以下命令将解决冲突后的文件添加到暂存区:

git add <解决冲突后的文件>

5)提交到仓库: 一旦解决了所有冲突,并且将更改的文件加入到暂存区,可以进行一次新的提交来完成合并过程:

git commit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

几度春风里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值