git pull 之后再提交造成一条merge记录的问题

如果甲、乙同时改了同一个分支的代码,甲先提交了代码,乙直接提交会报错,显示被拒绝。此时需要先执行git pull,拉取最新的代码,但会在git的提交记录里面新增一条merge记录,如图:

image.png

产生merge记录的原因是git push等同于git fetchgit merge两个命令

使用 git pull --rebase 可以在拉取远程更改时避免创建合并提交,保持线性记录,这个命令会将你的本地更改在远程更改之上重新应用,从而保持提交历史的线性,避免了merge记录。

默认git pull的时候,使用rebase的模式

全局配置:
git config --global pull.rebase true

单个仓库配置:
git config pull.rebase true

通过以上配置,当你执行 git pull 时,Git 将默认使用 rebase 而不是 merge。这有助于保持更线性的项目历史记录。

默认git pull的时候,取消使用rebase的模式

全局配置:
git config --global pull.rebase true

单个仓库配置:
git config pull.rebase true

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • git 实用技巧 1.git放弃本地修改,强制拉取远端 2.git 代码回退 3.Git 强制push本地代码到远...
    SueSea阅读 1,792评论 0 2
  • 常用分支命名 主分⽀(master) 主分⽀上包含线上正在运⾏的代码,可以被视为稳定的分⽀,⼀般不允许直接往mas...
    猪八宅百炼成仙阅读 1,454评论 0 0
  • 一.Git简介 Git是目前世界上最先进的分布式版本控制系统。它就没有中央服务器的,每个人的电脑就是一个完整的版本...
    大鹏的鹏阅读 3,707评论 0 0
  • Git是目前最流行的版本管理系统,也是最先进的分布式版本控制系统(distributed version cont...
    pro648阅读 11,098评论 1 17
  • 一、背景 今天更新了SourceThree,更新后合并代码时遇到了以下问题 翻译如下: 出现问题的主要原因应该是因...
    Mr_Ten阅读 13,276评论 0 2

友情链接更多精彩内容