申明:资料来源于网络及书本,通过理解、实践、整理成学习笔记。
分支定义
主分支:master
开发分支:develop
功能分支:feature
预发布分支:release
修补bug分支:fixbug
feature、release、fixbug这三种分支都属于临时性需要,使用完以后,应该删除,使得代码库的常设分支始终只有Master和Develop。
分支的使用规划
master:主分支(远程记录,管理员提交),只用来标记客户使用的发行版,当develop中的一次提交测试完成后,正式给客户使用时,将开发分支合并到主分支并进行标记。
develop:开发分支(远程记录,开发人员提交),记录的主干,功能的开发并不在这里完成。
feature: 用于功能开发(本地临时记录),在这里我们是一个开发人员完成一个功能开发。
开发时先从 develop 分支创建一个以 “功能” 命名的临时分支,一个功能开发完成后合并到 develop 分支,并删除这个临时分支(必须要删除),再次从 develop 分支创建新的临时分支进行下一个功能开发。为什么这样做,等你会用分支树,并需要在以后翻代码时就知道了。
一、合并开发分支到主分支
- 来源分支(develop)要干净:git status
- 切换到目标分支:git checkout master
- 目标分支(master)要干净:git status
- 合并到目标分支:git merge --no-ff -m " v1.00版本完成合并到 master" develop
- 查看分支图:git log --graph --oneline --all
- 创建标签:git tag v1.00
- 查看标签:git tag
- 查看标签信息:git show v1.00
- 推送:git push
- 推送标签:git push origin v1.00
注意:标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。
Administrator@PC202008061317 MINGW64 /c/www/git-demo (develop)
$ git status
On branch develop
Your branch is up to date with 'origin/develop'.
nothing to commit, working tree clean
Administrator@PC2020080