squash commit合并多个commit
来源:互联网 发布:手把手教开淘宝店 编辑:程序博客网 时间:2024/06/06 03:34
在使用 Git 作为版本控制的时候,在我们开发完分支后,一般分支上会有很多 commit,我们可能会由于各种各样的原因提交了许多临时的 commit,而这些 commit 拼接起来才是完整的任务。在合并到主干的时候,往往这类 commit 显得臃肿多余。为了方便别人做 code review,我们希望合并一些不必要的 commit 使我们的分支显得干净一目了然,也方便管理。
使用pycharm
应用squash commit时有两种情形,情形一:
当我们在本地分支Branch1进行了多次commit并push到自己的远程git库并提交pull request后此时checkout到本地master分支,并从upstream/master中创建新的分支Branch2并fetch最新的项目代码,然后在pycharm中选中VCS-->Git-->Merge Change选中合并分支Branch1并勾选Squash commit,保存,再一次提交commit并push到自己远程git库的分支Branch2,最后我们对Origin/Branch2进行pull request,此时我们发现在中只剩下了一个commit!然后把在PR状态的远程分支Branch1关闭,在PR状态的Branch2下的Discussion中添加Branch1的地址可以让他人访问看到之前做的所有commit
情形二:
我们在本地分支Branch1中只提交了一次commit1并push到了自己的远程库分支Origin/Branch1,同时提交了pull request,然而第二天我们发现本地分支Branch1上的代码有问题,进行修改后提交了commit2并同样push到Origin/Branch1,此时gitlab中Branch1分之下有了commit1和commit2,之后若要合并commit,和情形一操作相同,此时checkout到本地master分支,并从upstream/master中创建新的分支Branch2并fetch最新的项目代码,然后在pycharm中选中VCS-->Git-->Merge Change选中合并分支Branch1并勾选Squash commit,保存,再一次提交commit并push到自己远程git库的分支Branch2,最后我们对Origin/Branch2进行pull request,此时我们发现在中只剩下了一个commit!然后把在PR状态的远程分支Branch1关闭。
使用git.bash
和使用pycharm类似,们在本地分支Branch1进行了多次commit并push到自己的远程git库Origin/Branch1,并提交pull request后,如果想合并commit,
1.git checkout master checkout到本地master
2.git fetch upstream/master 从原始远程库upstream/master上fetch最新的项目代码
3.git branch -b Branch2 在分支master上新建本地分支Branch2
4.git merge --squash Branch1 和本地分支Branch1合并
5.git commit -m "squash commit" 提交commit信息
之后再gitlab或github中对Branch2提交PR同时关闭Branch1的PR状态
- squash commit合并多个commit
- Git合并多个commit
- 多个commit 合并为一个patch
- 多个commit 合并为一个patch
- 多个commit 合并为一个patch
- git rebase 合并多个 Commit
- 「Git」合并多个 Commit
- Git——合并多个commit
- Git使用rebase合并多个commit
- 「Git」合并多个 Commit
- 「Git」合并多个 Commit
- Git命令合并多个Commit
- git合并多个commit的方法: git rebase -i
- git合并多个commit压缩成一个点
- cherry-pick 多个commit
- Commit
- git_合并几个commit
- git commit合并
- 【Python】scikit-learn机器学习(八)——K-means聚类
- 推荐系统实验方法
- 安卓基本动画的使用及详解
- 1129. Recommendation System (25)
- jquery让滚动条回到顶部
- squash commit合并多个commit
- 设备的访问
- CSS Resets
- PHP 的 __FILE__ 常量
- Java学习中final关键字用法总结
- Data Warehouse
- linux11
- SharedPreferences采坑记
- 用C++实现希尔排序