git多次提交合并为一次提交(git rebase)

简介: git多次提交合并为一次提交(git rebase)

前言


在平时生产环境中测试和线上一般都是两个分支, 然后线上分支每一次提交都会加上锁, 需要运维部署jenkins去解锁部署代码重启服务, 但是平时在测试分支上完成功能可能需要多次commit提交测试环境测试功能, 提交正式分支的时候因为锁的存在就比较麻烦了, 所以需要把测试环境的多次commit合成一个commit提交正式分支, 这时就用到了git rebase


过程

20190524152434415.png


我现在有3个提交, 我需要合并这3个提交为一个提交

20190524152224971.png

执行这个命令, 合并几个就写几

20190524152503469.png

执行后会进入合并过程, 把除了第一个的pick其他全部改为s

2019052415255753.png

然后wq保存, 保存后会出现另一个界面, 合并修改这几次提交的commit信息

20190524152656648.png

我一般都是把中间的注释干掉, 然后保留我之前的commit, 或者你把所有的都删除在重写这次的提交注释信息也行

20190524152829406.png20190524152849418.png


这样就ok了, pull, push就可以了, 然后在另一个分支直接cherry-pick这个提交就可以了

20190524153045106.png


注意: 如果中间夹杂了别人的commit也可以直接把自己的所有commit都cherry-pick到线上分支, 不push也可以有用git rebase合成一个commit提交


目录
相关文章
|
3月前
|
开发工具 git
git merge和git rebase异同
git merge和git rebase异同
71 0
|
5月前
|
开发工具 git
Git操作远程仓库及解决合并冲突
Git操作远程仓库及解决合并冲突
87 0
|
4月前
|
存储 开发工具 git
Pycharm git-创建本地仓库\创建分支\合并分支\回溯版本\加入git后文件颜色代表的含义
Pycharm git-创建本地仓库\创建分支\合并分支\回溯版本\加入git后文件颜色代表的含义
72 0
|
5月前
|
数据可视化 Go 开发工具
cggit 简化 Git 提交、合并、分支偏移小神器,提升开发、修BUG效率!
cggit 简化 Git 提交、合并、分支偏移小神器,提升开发、修BUG效率!
42 0
|
9天前
|
开发工具 git 开发者
【专栏】如何理解 git rebase?
【4月更文挑战第29天】本文探讨了 Git 中的 `git rebase` 操作,它用于重新应用提交到另一分支,改变历史顺序。与 `git merge` 不同,rebase 重写提交历史,提供简洁线性的历史记录。文章介绍了 rebase 的基本操作、应用场景,如整理提交历史、解决冲突和整合分支,并强调了使用注意事项,如避免在公共分支上操作。尽管 rebase 可以带来整洁的历史和冲突解决便利,但其潜在的风险和可能导致的历史混乱需谨慎对待。理解并恰当使用 `git rebase` 可以提升开发效率和代码质量。
|
19天前
|
开发工具 git
git 拉取代码仓库代码报错(合并错误 refusing to merge unrelated histories)
git 拉取代码仓库代码报错(合并错误 refusing to merge unrelated histories)
23 0
|
6月前
|
开发工具 git Windows
Git分支新建与合并案例实操(结合IDEA讲解)
Git分支新建与合并案例实操(结合IDEA讲解)
167 0
|
2月前
|
Shell 开发工具 git
【问题篇】git创建分支后idea切换分支找不到以及合并问题
【问题篇】git创建分支后idea切换分支找不到以及合并问题
31 0
|
3月前
|
存储 开发工具 git
Git 教程:解密 .gitignore 文件、合并分支、解决冲突、及 Git 帮助
如果你忘记了命令或命令的选项,你可以使用 Git 帮助。 在命令行中,有几种不同的使用帮助命令的方式: git command -help - 查看特定命令的所有可用选项 git help --all - 查看所有可能的命令 让我们看看不同的命令。
214 3

相关实验场景

更多