项目前导 学习笔记
一、Git 分支
1.1、分支的作用
分支可以给使用者提供多个环境,意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。
1.2、分支的使用
在开发项目的过程中,若项目已经上线。那么当其出现 Bug 需要进行修复(或需要添加新功能)时,为了不影响项目的正常使用,这时我们会创建分支对项目进行 Bug 修复(或新功能开发),完成之后再把项目与分支进行合并。以上线的项目其实也是再一个分支里面,这个分支就是默认存在的 master
分支,而开发分支我们一般用 dev
来命名。
二、基于分支修复线上 Bug
上一篇开发的 “北京也不冷” 上线后也有一段时间了,今天突然发现其存在 Bug ,这可不行,得赶紧修复啊。
2.1、创建分支进行修复
- 查看目前所在的分支
$ git branch
- 创建分支
查看分支可以发现,当前分支为绿色。
# git branch 分支名
$ git branch bug
- 切换分支
# git checkout 分支名
# 切换到 bug 分支后就可以开始修复 bug 了
$ git checkout bug
# 创建并切换到分支
$ git checkout -b 分支名
2.2、修完之后的操作
- 管理提交
$ git add .
$ git commit -m "修复 Bug"
$ git log
# 注意了, 这里只是再 bug 分支进行了管理提交, git log 可以看到版本
# 但切换回 master 分支是看不到的
$ git checkout master
$ git log
- 合并分支
# git merge 分支名
# 合并时可能会发生冲突, 因为如果有两个分支修改了同一个地方, 那么合并时就会冲突
# 要把 B 分支合并到 A 分支, 就要先进入 A 分支
# 如: 把 bug分支 合并到 master分支
$ git checkout master
$ git merge bug
-
手动解决冲突(虽然手动有点 low,但常用。也可以用 Beyond_Compare 工具解决)
-
合并完之后,可以删除无用分支
# git branch -d 分支名称
$ git branch -d bug
三、使用 rebase 合并版本
当我们提交了很多版本后,git log
会全部显示处理,这时我们可以使用 rebase
将一些提交记录打包合并,以保持提交记录简洁,不分叉。
- 使用版本号进行合并
$ git rebase -i 版本号
# 表示进行合并的版本包括:从输入的版本号开始直到最新版本
- 也可以不用版本号
$ git rebase -i HEAD~3
# 表示合并最近的三条(数字可改)
- 执行完之后还要进行一些修改