首页 > 解决方案 > Git 拉取、合并和推送特定更改而不带来不相关的提交?

问题描述

我有 1 个开发分支和 1 个项目分支,项目分支有我想要在开发中进行的更改,但它也有一些我还没有准备好投入开发的更改。项目分支充当我自己的“开发”分支,而开发分支是共享的。

所以我的步骤是:

  1. 在开发分支上创建一个功能
  2. git pull origin project.branch.name --no-commit (这会给我差异,我可以在提交之前挑选出我想要添加到开发的更改)
  3. git 推送

这很好用,只是它带来了与我正在推动的更改无关的提交。引入这些提交的问题是,下次我想从项目中发出拉取请求以进行开发时,它不会识别更改,因为开发将有提交但没有代码更改。

我研究了樱桃采摘,但这对于包含大量提交的更改非常乏味。有没有人有替代解决方案?

非常感激!

更新 经过广泛的研究,这在使用单体应用之外显然不是很常见。我已经通过咬紧牙关和摘樱桃解决了这个问题。

标签: git

解决方案


第2步让我头疼。您正在手动处理来自分支的更改?这是一个问题,主要有两个原因:

  • 您很容易(当然是不情愿地)通过动态编辑文件来添加错误。
  • 即使您在完成拉取/合并操作之前在编辑过程中完美无缺,如果您选择摆脱与您不想在分支中拥有的东西相关的更改,这些修订也是分支历史的一部分当你完成拉/合并。

您的方法可能还有其他问题,但这是我能想到的最大的两个问题......而且它们很大


推荐阅读