Git压缩合并后的提交

b91juud3  于 2022-12-21  发布在  Git
关注(0)|答案(1)|浏览(157)

我有一个git分支,最近我不得不从我们的主分支中改基。这一切都进行得很顺利,但是我想提交一个PR,我需要让我的PR减少到1个提交。随着主分支的合并,我有2.1个用于我所做的更改,1个用于合并。
当我运行rebase并压缩在我最初创建分支后添加的提交时,我的PR中有大约30多个文件被更改。
当我运行rebase并删除在我最初创建分支后添加的提交时,就好像我从未与主分支合并过一样,一些测试开始失败。
我怎样才能把这一点降低到一次提交,而不把创建分支以来的所有更改都作为PR的一部分呢?

sd2nnvve

sd2nnvve1#

  1. checkout 您要提交请购单的分支。
    1.运行git log以查看分支的提交历史记录。标识表示您对分支所做更改的提交,并记下其提交哈希。
    1.运行git rebase -i <commit-hash>,其中<commit-hash>是代表分支修改的提交的提交哈希,这将打开一个文本编辑器,显示提交列表。
    1.在文本编辑器中,除了第一次提交之外,将所有提交的单词“pick”改为“squash”,第一次提交代表你对分支所做的修改,保存并退出文本编辑器。
  2. Git会在后续的提交中应用所做的更改,并将其压缩到第一次提交中,然后打开另一个文本编辑器来编辑合并提交的提交消息,编辑提交消息以反映合并后的更改,保存并退出文本编辑器。
    1.运行git push -f origin <branch-name>强制将更新后的分支推送到远程仓库,这将用新的合并提交替换旧的提交。

相关问题