一文搞懂git merge和git rebase异同
【摘要】 1 新建git目录并初始化 1.1 新建目录和文件index.html内容<html> <p>This is P1 ...</p> <p>This is P2 ...</p></html> 1.2 使用git进行初始化并查看状态 2 前期准备 2.1 master分支上提交文件 2.2 创建user1分支 2.3 在user1分支上作修改并提交修改内容:index.html<html>...
1 新建git目录并初始化
1.1 新建目录和文件
index.html内容
<html>
<p>This is P1 ...</p>
<p>This is P2 ...</p>
</html>
1.2 使用git进行初始化并查看状态

2 前期准备
2.1 master分支上提交文件

2.2 创建user1分支

2.3 在user1分支上作修改并提交
修改内容:index.html
<html>
<p>This is P1 ...</p>
<p>This is P2 ...</p>
<p>This is P3 ...</p>
</html>

2.4 分别在master分支和user1分支上查看文件内容
user1分支:

master分支:

2.5 查看提交日志

3 使用git merge合并分支内容
将user1分支合并到master分支

查看状态

4 修改master分支并提交
<html>
<p>This is P1 ...</p>
<p>This is P2 ...</p>
<p>This is P3 ...</p>
<p>This is P4 ...</p>
</html>
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hhivV3cf-1634872571096)(git merge和git rebase.assets/image-20211019150551177.png)]](https://img-blog.csdnimg.cn/f3fd8c47f0a043adb84d994ba51a6ec1.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBATXIuWW14,size_20,color_FFFFFF,t_70,g_se,x_16)
5 使用git rebase合并分支

6 重点来啦:git rebase和git merge有啥不一样?
6.1 首先看下提交后的日志情况
6.1.1 git merge

6.1.2 git rebase

6.2 分析
现在我们可以看一下用git merge和用git rebase所产生的历史的区别:

7 总结
- 可以看出merge结果能够体现出时间线,但是rebase会打乱时间线。
- 而rebase看起来简洁,但是merge看起来不太简洁。
- 最终结果是都把代码合起来了,所以具体怎么使用这两个命令看项目需要。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者

评论(0)