工具篇:Idea-git 本地分支&远程分支创建&分支代码合并
文章目录
前言
在项目开发中,通常会有好几个分支来分别对应各个环境如:开发环境,预发布环境,正式环境,每个环境都会对应有各自的分支,方便项目的发版。本文对常用的分支创建及分支代码合并操作进行记录。
一、git 分支
在 Git 中,分支(Branch) 是用于隔离代码开发的核心机制,它允许你在不影响主代码的情况下,独立开发新功能、修复 bug 或进行实验性修改。
1.1 git 的本地分支和远程分支
在 Git 中,本地分支(Local Branch)和远程分支(Remote Branch)是协作开发的核心概念,两者的定位、作用和交互逻辑不同。
1.1.1 本地分支:
本地分支是存储在你自己电脑本地仓库(.git 目录)中的分支,仅对自己可见,完全由你控制,常用于日常开发的代码隔离,比如编写新功能、修复本地 bug 等,可自由提交、修改,无需担心影响他人。
1.1.2 远程分支:
远程分支是存储在远程仓库(如 GitHub、GitLab 服务器)中的分支,所有有权限的团队成员都能访问,是团队协作的 “共享媒介”。
1.1.3 git 项目克隆分支的创建:
通常我们相对项目克隆到本地电脑,当你通过 IDEA 克隆远程仓库时:
- Git 会将远程仓库的所有分支信息拉取到本地(作为远程跟踪分支,存储在 .git/refs/remotes/ 目录)。
- 会自动创建并切换到与远程默认分支对应的本地分支(例如:远程默认分支是 main,则本地会创建 main 分支,并关联 origin/main)
- 其他远程分支(如 origin/feature/login)不会自动生成对应的本地分支,需手动创建:使用 checkout 命令操作远程分支时,会自动创建对应的本地分支,并与远程分支建立关联(跟踪关系)

检出对应的远程分支

1.1.4 新建远程分支:
新建远程分支有两种方式,方式1:直接在git仓库中基于某个分支创建 远程分支,方式2:先创建本地分支,然后在提交时自动在git 仓库创建远程分支
方式1:
方式1 是直接在远程仓库上,创建分支
输入分支名称确定即可:
方式2:
基于某个本地分支-》 创建一个新的分支,本文已git hub desk 为例:
(1) 创建本地分支:

输入分支名称:

(2)建立本地分支与远程分支的关联:

二、git 分支代码合并
通常我们在一个分支开发完毕并且提交代码到自己的远程分支后,需要将改分支的代码在合回到 对应的预发布或者生产分支;
2.1 将自己的代码push 到自己的远程分支
改步骤就是把自己本地的分支代码,合并到远程的分支
(1) 更新本地分支的代码:
改步骤是将远程的分支代码,(如果他人也上传了代码到改分支)合并到本地分支,如果有冲突 解决冲突后进行提交;
选择rebase 进行衍合:

(2) push 代码:
改步骤将需要提交的代码 ,发布到远程分支上:
2.2 本地要合并的分支check 并更新
本地check 要合并的分支:
该步骤,就是在本地先检出要和并的分支,然后将改分支更新到最新,然后在将要合并的分支进行合并,最后将合并后的分支推送到远程分支上
check分支:

使用rebase 更新分支

2.3 合并分支:
选择需要被合并的分支 ,进行merge后提交到远程分支

如果有冲突需要解决冲突; 最后将合并后的本地分支推送远程仓库;
2.4 合并出现问题:
如果合并分支出现 无法修改的问题,此时可以回退分支,重新进行合并
git reset --hard origin/xxxx - origin:是 Git 对「远程仓库」的默认别名(alias)。当你通过 git clone 克隆一个仓库时,Git 会自动将远程仓库地址命名为 origin,方便后续操作(比如推送、拉取代码)。你可以理解为「远程仓库的昵称」。
- master:是远程仓库中的一个分支名称(通常是默认主分支,现在很多项目也用 main 替代)。
合起来,origin/master 表示「远程仓库(origin)里的 master 分支当前的状态」(即该分支在远程仓库中的最新提交记录)。
例如:需要回退master 分支:
-- 切换到 master分支(切换到你要回退的分支) git checkout master -- 还原本地master 分支为远程仓库master 分支的最后一个提交 -- origin为远程仓库地址,master 为对应分支,这里会将远程仓库 master 分支下的最后一个提交应用到你当前checkout 的master分支 git reset --hard origin/master 总结
本文介绍:Idea-git 本地分支&远程分支创建&分支代码合并。