玖叶教程网

前端编程开发入门

Git merge、rebase、squash 你都搞懂了吗?

Git Merge 是将一个分支的提交合并到另一个分支的过程。合并是将多个分支的更改整合到一起的方法。在合并过程中,Git 会自动找到两个分支的共同祖先,然后将这个共同祖先和需要合并的分支进行比较,生成一个新的提交,这个提交包含了两个分支的差异内容。

fast-forward:现在有master分支, dev 分支拉出来开发并 commit 了几次,再合并回 master 分支,如果 master 分支在 dev 分支拉出来以后没有任何提交了,就会使用 fast-forward 模式,直接把master指针指向dev的最后一个提交节点上,分支提交记录为一条直线,最后master指针和dev指针都指向原来dev的最后一次提交。

git rebase的意思为:重新定义分支的版本库状态;当执行rebase操作时,git会从两个分支的共同祖先开始提取待变基分支上的修改,然后将待变基分支指向基分支的最新提交,最后将刚才提取的修改应用到基分支的最新提交的后面。

在git merge中,每一次merge就会产生一个额外的commit,如果在工程中有许多bug和一些微小改变的commit,那么可以使用--squash选项将feature分支中的所有commit取出,然后压缩这些commit为一个并加入到master分支中。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言