Git分支

文章目录


一、Git分支

Git分支就像是一棵大树的分叉。

  • 主干(main/master):是项目最稳定的主线路。
  • 分支:相当于从主干分出来的一条平行小路。

作用:让你可以在小路上瞎折腾(写新功能、修bug),完全不用担心影响主干。折腾好了,再把小路接回主干(合并)。

折腾坏了,直接删掉分支重来,主干毫发无损。

简单说:分支就是帮你把"实验"和"正式"隔离开的工具,方便多人同时干活不出乱子。

二、分支的操作

2.1 查看分支

git branch -v 即可查看分支

可以看出当前只有一个分支

2.2 创建分支

如果当前项目出现问题,需要紧急添加热补丁,就加一个 hot-fix 分支

git branch hot-fix 即可添加成功

2.3 切换分支

上面图片可以看到后面的(蓝括号)里写的master,表示当前还在master分支,如何切换分支呢?

git checkout hot-fix

此时我们在hot-fix这个分支上去修改文件内容

再查看master分支下的文件内容:

发现是不一样的,所以接下来我们看如何合并分支。

2.4把指定的分支合并到当前分支上

正常合并,比如现在在master分支下,我需要把hot-fix分支下的文件合并到master分支下:
git merge hot-fix

可以发现,这里master分支下的文本内容已经变为hot-fix下的了。

2.5 冲突合并

什么时候会出现冲突呢?

这里我先在master分支下添加一行:

然后去hot-fix分支下添加不一样的修改

就是我在master没空行加了一行,在hot-fix下空行加了一行。

接着切换到master分支去合并

发现起冲突了,因为两个分支都做了修改,git 不知道用哪一个。

此时我们 vim 打开文件,发现已经给我们已经标出来当前分支哪里做了修改,冲突分支哪里做了修改

此时我们需要在这个文件里做修改。

然后提交,这里注意,提交不要再加文件名了。

此时的情况是,hot-fix并未修改,而master的已经被修改了。

相关推荐
小此方12 小时前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙12 小时前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK14 小时前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No719 小时前
Git版本控制工具(一)
git
小小小米粒1 天前
重置本地git
大数据·git·elasticsearch
鶴哥只手遮天1 天前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing1 天前
git 相关命令总结
git
A-刘晨阳2 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie2 天前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie
鬼手点金2 天前
opencode-性能优化建议
java·人工智能·git·自动化·nanogpt