给佬们的Git教程-第三章


第三章:分支管理与协作

在多人协作的项目中,分支管理是Git的核心功能之一。通过分支,开发者可以在独立的环境中进行开发,而不会影响主分支的稳定性。本章将详细介绍分支的创建、切换、合并以及协作开发的常见流程。

3.1 分支的基本概念

在Git中,分支可以看作是代码仓库的一个独立的开发线程。每个分支都有自己的提交历史,开发者可以在不同的分支上进行开发,最后通过合并操作将分支的更改整合到主分支中。

主分支(mainmaster

主分支是项目的默认分支,通常用于存放稳定版本的代码。在现代Git实践中,main分支逐渐成为默认的主分支名称,但master分支仍然被广泛使用。

特性分支(Feature Branch)

特性分支用于开发新的功能或修复bug。这些分支通常从主分支创建,并在开发完成后合并回主分支。

3.2 创建分支

创建分支是分支管理的第一步。可以通过以下命令创建一个新的分支:

git branch <branch_name>

示例

假设你正在开发一个新功能,需要创建一个名为feature-login的分支:

git branch feature-login

3.3 切换分支

创建分支后,需要切换到该分支进行开发。可以通过以下命令切换分支:

git checkout <branch_name>

示例

切换到feature-login分支:

git checkout feature-login

你也可以通过git checkout -b命令同时创建并切换到新分支:

git checkout -b feature-login

3.4 查看分支

在开发过程中,经常需要查看当前仓库中的所有分支。可以通过以下命令查看分支:

git branch

示例

git branch

输出示例:

* feature-login
  main

当前分支前会有一个*号,表示当前工作在feature-login分支上。

3.5 合并分支

当特性分支开发完成后,需要将分支的更改合并回主分支。可以通过以下命令合并分支:

git merge <branch_name>

示例

假设你已经完成了feature-login分支的开发,需要将更改合并回main分支:

  1. 切换到main分支:

    git checkout main
    
  2. 合并feature-login分支:

    git merge feature-login
    

如果在合并过程中没有冲突,Git会自动完成合并操作。如果有冲突,Git会提示你手动解决冲突。

3.6 解决冲突

在多人协作的项目中,冲突是不可避免的。当两个分支对同一个文件的同一部分进行了不同的修改时,就会发生冲突。解决冲突的步骤如下:

  1. 查看冲突文件:Git会在冲突的文件中标记冲突的部分,通常会看到类似以下的内容:

    <<<<<<< HEAD
    修改内容1
    =======
    修改内容2
    >>>>>>> feature-login
    
  2. 手动编辑文件:根据实际情况选择保留或合并修改内容。

  3. 标记冲突解决:编辑完成后,使用以下命令标记冲突已解决:

    git add <file_name>
    
  4. 完成合并:提交合并操作:

    git commit
    

3.7 删除分支

当分支的更改已经合并到主分支后,可以删除该分支以保持仓库的整洁。可以通过以下命令删除分支:

git branch -d <branch_name>

示例

删除feature-login分支:

git branch -d feature-login

如果分支尚未合并,Git会阻止删除操作。你可以使用-D选项强制删除分支:

git branch -D <branch_name>

9 Likes

看完了,开始催更

3 Likes

大帅哥应该都看完了,我还不知道第一章在哪~ :tieba_087:
感谢佬友教程~

4 Likes

耶,第四章指日可待

1 Like

第三章看完,谢谢