GitKraken点击强制推送时,是否采用force with lease机制?
GitKraken 强制推送相关疑问解答
嘿,刚好对 GitKraken 的推送逻辑比较熟,来给你拆解这两个问题:
1. GitKraken执行推送操作时是否使用force with lease?
首先要区分「常规推送」和「强制推送」场景:
- 如果你执行的是常规推送(也就是本地分支比远程分支新,不需要覆盖远程内容的推送),GitKraken 和原生 Git 完全一致,只会执行标准的
git push命令,不会用到--force-with-lease参数——毕竟这个参数是为了安全覆盖远程分支设计的,常规同步根本不需要。 - 只有当你的本地分支和远程分支存在分歧(比如变基之后),GitKraken 提示你需要强制推送时,才会涉及到强制类的参数。
2. 点击GitKraken的强制推送按钮时,底层执行的是普通强制推送还是force push with lease?
默认情况下,GitKraken 的强制推送按钮底层执行的是git push --force-with-lease,这也是它的默认安全策略,避免你不小心覆盖其他人刚推送到远程的内容。
不过这个行为是可以自定义的:你可以打开 GitKraken 的「偏好设置(Preferences)」,找到 Git 选项卡,在「Force Push Mode」里切换模式——可选「Force with Lease」(默认)或者「Force」(普通强制推送)。
内容的提问来源于stack exchange,提问作者kishikaisei
相关产品推荐
相关产品推荐

