侧边栏壁纸
博主头像
可乐呢o3o博主等级

少些比较,多些谦虚。

  • 累计撰写 54 篇文章
  • 累计创建 67 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Git多次提交合并

Evan
2024-06-06 / 0 评论 / 1 点赞 / 63 阅读 / 3035 字

在使用git多人协作开发项目时,常遇到这种情况:

squashGIT.png

规范的代码提交需要每次merge只有一次提交.
在这里可以看到,dev分支有两次提交,并且main分支更新了一次提交.
确保代码是最新的再执行下面操作:
git checkout dev
复制main分支的hash值,比如我这里的远端main分支的hash,执行变基:
git rebase -i 249f95101d36b0283b03e38b5a421553b69e68e0
如果有冲突代码.需要在这里开始解决冲突.解决完冲突后执行
git rebase --conntinue
这时候将第一个commit保留pick,其余改为squash或者s
或者用命令替换:%s/pick/s/gc

git02.png

保存后会新弹出一个文件,这里便是新的提交内容,

image-jzdw.png

image (1).png

这时候我们可以发现,本地的dev分支变成了一次提交,并且紧跟着main分支:

image (2).png

这时候把本地的dev分支push到远端,覆盖掉之前的分支.
git push origin dev --force

1

评论区