【发布时间】:2020-02-24 23:22:01
【问题描述】:
我有两个分支:
- 我每天提交几次的个人分支。
- 一个“开发”分支,我偶尔想将我的个人分支更改合并到该分支,但提交消息被压缩。
合并后,我想继续使用我的个人分支,然后可以随意重新合并回dev分支。
使用 svn,这很容易做到,不会发生任何合并冲突。
- 在个人分支上提交多项更改
- 将更改合并到 dev 分支,这将记录单个提交消息
- 将步骤 2 中的更改合并回个人分支,但“只记录合并信息”,这样它就不会合并任何内容。
- 重复步骤 1。
现在,dev 分支知道它从个人分支中获得了什么,而我的个人分支知道它拥有来自 master 分支的所有内容。
使用 git,我尝试使用 git merge --squash 从个人分支转到开发分支,第一次效果很好。但是第二次我遇到了一堆冲突。由于merge --squash 没有合并原始提交,而是进行了与原始提交无关的新提交,git 没有意识到我已经将一堆内容从我的个人分支合并到了开发分支。
在 git 中这个工作流程有什么解决方案吗?看来如果我merge --squash一个分支,下次我必须创建一个新分支。
【问题讨论】: