0


详解Git分支及分支合并

系列文章目录

 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加

例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

之前的文章我们讲解了Git是什么,Git的基本操作,Git和GitHub之间的关系,这些其实对于我们个人开发者来说已经够用了。但是在工作的实际生成环境下完全不够的,我们不可能什么都放在一个分支上,这样不好管理,尤其是权限的配置,不能谁都拥有全部的权限,所以会创建多个分支,开发用开发的分支,测试用测试的分支,最后上线可以使用合并到master分支。也可以开一个分支来去解决问题,修改好后再合并到主分支中。


一、Git分支

在之前我们用树的形式描述了git版本管理的逻辑,每一个版本就是一个节点。这时这个项目只有一个分支,默认是master分支,那么Git别的分支又是什么意思呢?
git分支
以上就是关于Git分支的逻辑理解,如上图master已经拥有了5个版本,在此基础上创建了一个dev分支,这时的dev分支是拥有master的所有记录的(包括文件、版本记录等信息)。在dev分支下创建dev-dev分支,dev-dev分支是会拥有dev分支的所有记录。

二、使用步骤

git checkout -b branch_name         // 创建并切换到branch_name这个分支
git branch                          // 查看所有分支和当前所处分支
git checkout branch_name            // 切换到branch_name这个分支
git branch -d branch_name           // 删除本地仓库的branch_name分支
git branch branch_name              // 创建新分支

1、创建分支

a、创建dev分支
在这里插入图片描述
b、查看所有分支和当前所处分支

在这里插入图片描述
c、切换到dev分支
在这里插入图片描述
d、查看dev分支的内容和版本记录
在这里插入图片描述
e、在dev分支下增加

aaa

后提交到本地仓库。此时的内容只在dev分支可见,master就看不到了。
在这里插入图片描述
f、切换回master分支,查看内容和提交记录
在这里插入图片描述
g、切换到dev分支后创建dev-dev分支,我们发现dev-dev分支拥有dev分支的所有内容和版本记录
在这里插入图片描述
h、切换回master分支后虽然没有其他分支的版本记录,但是HEAD指针的引用记录还是全部可以查看到的

在这里插入图片描述

2、分支合并

git merge branch_name               // 将分支branch_name合并到当前分支上

a、将dev分支合并到master分支
在这里插入图片描述
b、查看master分支的版本记录
在这里插入图片描述
c、查看HEAD指针的引用记录。在记录中我们发现合并使用的是

Fast-forward

,它直接将Head指针指向了

a88a7df

这个版本,没有进行复制重写。
在这里插入图片描述
合并分支远远没有看到的这么轻松,后面肯定会遇到分支冲突等各种冲突场景,我们会专门写一篇文章来讲述这些情景。

3、远程操控的分支操作

git push --set-upstream origin branch_name  // 设置本地的branch_name分支对应远程仓库的branch_name分支
git push -d origin branch_name      // 删除远程仓库的branch_name分支
git pull                            // 将远程仓库的当前分支与本地仓库的当前分支合并
git pull origin branch_name         // 将远程仓库的branch_name分支与本地仓库的当前分支合并
git branch --set-upstream-to=origin/branch_name1 branch_name2  // 将远程的branch_name1分支与本地的branch_name2分支对应
git checkout -t origin/branch_name  // 将远程的branch_name分支拉取到本地

a、设置本地分支和远程分支的对应关系
在这里插入图片描述

b、查看GitHub的分支情况
在这里插入图片描述
c、在GitHub上在线修改dev-dev分支下的readme.txt文件,增加ccc内容,然后使用命令将修改拉取下来。
在这里插入图片描述
d、将远程仓库的dev-dev分支与本地仓库的当前分支(dev)合并
在这里插入图片描述
e、在远程仓库创建一个

dev-dev-dev

分支,增加

ddd

内容,然后将远程的

dev-dev-dev

分支拉取到本地

在这里插入图片描述
在这里插入图片描述
f、从本地删除远程仓库的分支
在这里插入图片描述
在这里插入图片描述

4、远程仓库合并请求

对于远程仓库的一个请求合并等操作可以在图形界面上进行操作,较于简单则不进行演示。


总结

此文讲了Git分支及分支合并操作,后续会遇到一些冲突的问题,我们将会再下一篇文章中进行演示解决。

标签: git github

本文转载自: https://blog.csdn.net/qq_46307070/article/details/125135390
版权归原作者 Owen Guo 所有, 如有侵权,请联系我们删除。

“详解Git分支及分支合并”的评论:

还没有评论