三分钟教你学Git(十二) 之 fast-forward

本文介绍了Git中的fast-forward模式,这种模式下,Git通过移动HEAD指针实现合并,而不创建新的commit。当不同分支引用同一commit时,对其中一个分支的修改会影响另一个。避免fast-forward可以通过--no-ff、cherry-pick和--squash选项来实现。
摘要由CSDN通过智能技术生成

什么是fast forward, 顾名思义,就是快速向前进,Git怎么做到快速的呢?


原来如果Git判定可以fast forward的时候,直接修改当前HEAD指针的指向然后再修改当前HEAD指针,说白了就是修改两个指针的指向,而并没有生成新的commit对象。


所以当你修改了其中的一个branch中的某个commit的时候,另一个branch如果也引用了此commit,则这个branch会很意外的出现变化,因为引用的是同一个commit对象。


所以一般有几种方法:

1 --no-ff

显示告诉Git不要fast forward

2 cherry-pick

3 --squash

将所有commit合并成一个commit,这样肯定是生成一个新的commit。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值