Git-分支管理

文章目录

  • 1.分支管理
  • 2.合并冲突
  • 3.合并模式
  • 4.补充

在这里插入图片描述

1.分支管理

Git分支管理是指在Git版本控制系统中,使用分支来管理项目的不同开发线路和并行开发的能力。通过分支,开发者可以在独立的环境中进行功能开发、bug修复等工作,而不会影响到主分支上的代码。

查看分支:

git branch

在Git中有一个HEAD指针,默认情况下指向master,而master指向的是最新的一次提交.

在这里插入图片描述
HEAD也可以指向其它分支,被指向的分支就是当前工作的分支

创建分支:

git branch [分支]

Git-分支管理_第1张图片

切换分支:

git checkout [分支]

Git-分支管理_第2张图片
合并分支:

# 需要先切换到想要合并的分支下
git merge [分支]

注意:分支就相当于一份副本,切换到分支后进行的一系列操作是没合并分支之前,是不会影响其它分支的.

删除分支(未提交):

# 需要切换到其它分支下
git branch -d [分支]

强制删除分支(提交过):

git branch -D [分支]

执行命令后,Git会立即删除指定的分支,无论它是否合并到其他分支中。

2.合并冲突

合并冲突指的是合并分支或拉取远程分支时,Git无法自动解决不同分支上对同一行代码的修改而产生的冲突。

如图所示:

Git-分支管理_第3张图片

演示:

修改test分支下的Readme文件,并进行add和commit
Git-分支管理_第4张图片

修改master分支下的Readme文件,并进行add和commit

Git-分支管理_第5张图片

进行合并,结果:
Git-分支管理_第6张图片

此时就发生合并冲突了

合并冲突的解决: 解决冲突,并重新进行add和commit操作

使用vim命令查看Readme文件,>>>之间的代码就是产生冲突的代码. HEAD是当前分支的代码.

Git-分支管理_第7张图片

如果想保留其中一方的修改,就需要把另外一方的修改给删掉.

例如保留test分支下的代码:

在这里插入图片描述

保存并退出.

在这里插入图片描述
解决合并冲突后,需要重新进行一次add和commit操作

3.合并模式

"Fast-forward"是Git中合并分支的一种类型。它指的是在合并两个分支时,当前分支指针可以直接向前移动到目标分支的最新提交,而无需进行实际的合并操作。

但使用"Fast-forward"模式 看不出是合并(merge)提交的,还是add,commit提交的.

不使用"Fast-forward"模式(推荐)进行合并

git merge --no--ff -m "描述信息" [分支]

No Fast-forward 会指向一个新的提交结点.

4.补充

一般master分支的内容要求比较稳定,而开发一般都会在新建的分支中进行

BUG分支是指用于修复软件项目中发现的BUG的临时分支。在软件开发过程中,当发现一个BUG时,可以创建一个专门的分支来处理和修复该问题,以避免对主分支或其他正在进行的开发任务产生干扰。

Git-分支管理_第8张图片

你可能感兴趣的:(Git,git)