avatar

目录
Git-学习笔记

分支

主要分支

master分支

  • master为主分支,也是用于部署生产环境的分支,master分支要确保稳定性

  • master分支一般由develop以及hotfix分支合并,任何时间都不能直接修改代码

开发分支develop

  • develop为开发分支,始终保持最新完成以及bug修复后的代码

  • 一般开发新功能时,feature分支都是基于develop分支下创建

临时性分支

功能分支feature

  • 为了开发某种特定功能,从develop分支上面分出来的功能分支名字

  • 功能分支通常仅存于开发人员存储库中,而不存在于中origin

  • 可以采用feature-*(分支功能/分支名)的形式命名

预发布分支release

  • 指发布正式版之前(即合并到master分支之前),我们需要一个预发布版本进行测试
  • 发布分支是从develop分支上面分出来的,预发布借宿以后,必须合并developmaster分支
  • 可以采用release-*的形式命名

修补bug分支(fixbug)

  • 软件正式发布以后,难免会出现bug。这时就需要创建一个分支,进行bug修补。修补bug分支是从master分支上面分出来的。修补结束以后,再合并进master和develop分支
  • 可以采用fixbug-*的形式

日常使用命令

首先我们要知道一些常用的命令

  • git branch:查看当前项目有哪些分支
  • git clone xxx:克隆一个github项目
  • git remote -v:查看详情
  • git checkout -b dev(分支名):创建分支
  • git merge:合并代码

从develop建立功能分支

Javascript
1
2
3
4
5
// 开发新功能时,请从develop分支
git checkout -b feature-* develop

// 同步develop分支的代码
git pull origin msster

在此分支上不断的完善

  • 多人协作时,大家都会往masterdev分支上推送各自的修改,所以需要同步线上代码
  • git pull origin develop意思是取获取远程仓库中develop分支上的commits,然后把origin/develop中的内容merge到你目前的分支中

不断的完善功能

  • 通过git addgit commit -m "xxx"不断的完善这个分支的功能

功能开发完成

Javascript
1
2
3
4
5
6
7
8
// 切换分支到develop
git checkout develop

// 合并分支
git merge --no--ff feature-*

// 删除分支
git branch -d feature-*
  • 功能开发完成以后合并到develop合并一定是在feature/*完全开发完成并且测试通过的情况下进行合并操作,不能把由错误的地方提交上去

  • --on--ff标志使合并始终创建一个新的提交对象,即使合并可以通过快进来执行。这样可以避免丢失有关要素分支历史存在的信息,并将所有添加了要素的提交分组在一起

  • 平时默认的git merge无法从Git历史记录中看到哪些提交对象一起实现了功能-你将不得不手动读取所有日志消息。在此模式下还原整个功能(即一组提交)

预发布分支release

从develop分支创建发行分支。例如,说版本1.1.5是当前的生产版本,我们即将发布一个大版本,develop准备好了“下一个版本”,我们已经决定,这将成为版本1.2(而不是1.1.6或2.0)。因此,我们分支并给发行分支起一个反映新版本号的名称

Javascript
1
2
3
4
5
6
7
8
9
// 创建一个预发布分支
git checkout -b release-x develop

// 确认没有问题后,合并到master分支
git checkout master
git merge --on--ff release-x

// 对合并生成的新节点,做一个标签
git tag -a x
文章作者: 青空
文章链接: https://gitee.com/AIR-ZRB/blog/2020/05/25/Git-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 青空
打赏
  • 微信
    微信
  • 支付寶
    支付寶