在日常工作中,git的分支,一般在新需求、修复bug、产品构建会被使用。用好分支管理,可以让你的工作,更加赏心悦目,更加得心应手。
内容主要来源官方文档:https://git-scm.com/docs
本次分享的内容概述:
分支的规范
创建分支、切换分支、删除分支
diff 分支
合并分支
1. 分支的规范
master 分支主分支,用于部署生产环境的分支,确保稳定性。
master分支一般由develop以及hotfix分支合并,任何情况下都不能直接修改代码。develop 分支develop为开发分支,通常情况下,保存最新完成以及bug修复后的代码。
开发新功能时,feature分支都是基于develop分支下创建的。feature 分支开发新功能,基本上以develop为基础创建feature分支。
分支命名:feature/ 开头的为特性分支, 命名规则: feature/user_module、 feature/cart_module。release 分支release 为预上线分支,发布提测阶段,会release分支代码为基准提测
hotfix 分支分支命名:hotfix/ 开头的为修复分支,它的命名规则与 feature 分支类似。
线上出现紧急问题时,需要及时修复,以master分支为基线,创建hotfix分支,修复完成后,需要合并到master分支和develop分支。
2. 创建分支(本地跟远程)
在当前分支的基础上,创建一个新的分支,但是还是停留在当前分支 git branch [new_branch]
创建新的分支,并且切换到新的分支上git switch [new_branch]
git checkout -b [new_branch]==> 上面连个都等同于
git branch [new_branch] + git checkout [new_branch]根据远程的某个分支,创建本地分支git checkout -b [local_branch_name] [remote_branch]
先列出远程分支,然后选择你想拉取的分支,使用git checkout -b 即可,如下图
创建远程分支git push origin [local_branch]:[new_remote_branch]
切换分支
git checkout [other_branch]删除本地的分支git branch -d [branch1] [branch2] ....
同时删除多个分支(gao2,gao3,gao4,gao5,gao6)删除远程分支git push origin :[delete_remote_branch]
3、分支对比
git diff [branch1] [branch2]
> 比较的对象为:本地的仓库的内容
> 如果需要查询哪些文件有差异,可以加多一个管道 git diff [branch1] [branch2] | grep 'diff'
git diff
> 比较的对象:当前分支下的,工作区与暂存区的对比
4、合并分支
将另一个分支合并到当前分支(有冲突的,不合并)git merge [other_branch]
如果要讲另一个分支的某一个文件(多个)替换当前文件
git checkout [other_branch] [file1] [file2] ...