版本控制Git使用最佳实践
总结版本控制Git的使用,应明确有哪些具体的场景
| 应用场景 | 紧急上线(hotfix) | 功能开发(feature) | 测试(dev/release) | 生产(master) |
| 紧急上线 |
4.git checkout -B hotfix origin/master 5.git add . 6.git commit 7.git push origin hotfix 8.git fetch 9.git rebase origin/master(确定是否需要解决冲突) 这里解决冲突 10.git add .(解决冲突后执行) 11.git rebase --continue(解决冲突后接着rebase) |
1.git checkout master(本地执行) 2.git fetch(本地执行) 3.git rebase origin/master(本地执行) 12.git merge hotfix(合并紧急上线分支) 13.git push origin master(上线) 14.git fetch(生成环境执行) 15.git rebase origin/master(生成环境执行) |
||
| 功能开发上测试 |
4.git checkout -B feature origin/dev(本地执行,检出开发分支) 5.git add .(本地执行,添加) 6.git commit (本地执行,提交) 7.git push origin feature(本地执行,推送到git服务器) 8.git fetch 9.git rebase origin/dev(本地执行,确定是否有冲突) 这里解决冲突 10.git add .(本地执行,添加) 11.git rebase --continue(本地执行,继续) |
1.git checkout dev(本地执行) 2.git fetch(本地执行) 3.git rebase origin/dev(本地执行) 12.git merge feature(本地执行dev合并master) 13.git push origin dev(将合并推送至git服务器) 14.git fetch(测试环境执行) 15.git rebase origin/dev(测试环境执行,上测试) |
||
| 上线 | 1.git checkout dev(测试) | |||
2. rebase后再提交的问题:

3. feature分支基于release分支作rebase出错的通用解决办法(删除本地分支,重新检出)
//取消rebase操作git rebase --abort git checkout release//删除本地feature分支,这个操作不会删除远端feature分支 git branch -D//重新检出分支 git checkout feature
4. 使用git push报错:
Access denied: Cannot push code by Deploy Public Key
fatal: Could not read from remote repository.
版本控制Git使用最佳实践的更多相关文章
- 【GIT】Git Flow最佳实践
Git Flow 工作流一共包含五种分支: 两个长期分支: 主分支 master:用于存放对外发布的版本,任何时候在这个分支拿到的,都是稳定的分布版 开发分支 develop:用于日常开发,存放最新的 ...
- 应用Git Flow—Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高. 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- Git Flow——Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高. 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- Git Flow,Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高, 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- 版本控制之最佳实践(Git版)
现如今,应该每个开发者都在使用版本控制工具了吧.然而,如果你理解版本控制的基本规则,你便能更好地发挥它的效用.在此,我们汇总了一些最佳实践,希望你在使用Git做版本控制时能够了然于心.得心应手. 1. ...
- CI Weekly #18 | flow.ci iOS 最佳实践出炉,正式支持 Git@OSC 构建
如大家所期待,flow.ci 现已支持开源中国的代码仓库 - 码云,可以直接构建 Git@OSC 的项目了,点击创建项目-选择代码仓库-选择码云-绑定 OSChina 账户-选择要构建项目,教程看这里 ...
- 干货:基于 Git Flow 的 Git 最佳实践(附加解决大家经常碰到的问题)
突然想写这一篇Git的使用心得,主要有几个原因,其一是自己使用Git也有快3年时间了,其间自己经历过一些坑,也有迷茫的时候,在呆过的大大小小的团队中,其实每个人也都并不是Git专家,很多对于流程以及G ...
- Git 最佳实践:分支管理
5月份,为统一团队git分支管理规范,刚开始准备自己写,在网上搜了下,发现不少不错的git分支管理实践.最后我为团队选择了这个git分支管理实践 A successful Git branching ...
- [转载]理解 Git 分支管理最佳实践
原文 理解 Git 分支管理最佳实践 Git 分支有哪些 在进行分支管理讲解之前,我们先来对分支进行一个简单的分类,并明确每一类分支的用途. 分支分类 根据生命周期区分 主分支:master,deve ...
随机推荐
- Emacs 中使用中文插件 eim
在 Emacs 中输入中文,一般用 ibus 一类的输入法也能应付,但来回切换有点麻烦,这里介绍国人写的一个好插件 eim. - 安装 由于在 list-packages 中没有找到这个插件,所以不能 ...
- 变量的值与判断的结果有关,使用Set Variable If
1.有时候变量的值在赋值时,会依据情况来赋值.这个时候就要用到:Set Variable If ${result} BuiltIn.Set Variable 10 ${my_result}= Buil ...
- bootstrapvalidator 用法
1.引入js.css 2.用法 API:http://bootstrapvalidator.votintsev.ru/api/ 参考博客:https://blog.csdn.net/u01393846 ...
- ZOJ - 2423-Fractal
A fractal is an object or quantity that displays self-similarity, in a somewhat technical sense, on ...
- Linux下快速配置Java开发环境
1.下载 jdk8官网下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html ...
- 【博客迁移】hyrepo.com
博客迁移至 www.hyrepo.com
- LeetCode 657. Robot Return to Origin
There is a robot starting at position (0, 0), the origin, on a 2D plane. Given a sequence of its mov ...
- 关于getHibernateTemplate().get()方法
返回的对象值唯一,方法带有两个参数 第一个是意图查询实体的Class 如User.Class ;第二个参数是该实体在数据库中对应的主键值,而且参数的类型要和映射文件相对应. 如 Role role ...
- Linux提示删除文件cannot remove `文件名': Operation not permitted
Linux系统下删除某个文件时提示如下报错: 执行lsattr命令可以看到隐藏属性-------i--------,如下图: 通过查找资料发现: chattr命令用于改变文件属性.这项指令可改变存放在 ...
- Elasticsearch的DSL之比较重要的几个查询语句
1. match_all { "match_all": {}} 匹配所有的, 当不给查询条件时,默认. 2. match 进行full text search或者exact va ...