Git “关于船长的公关”;“混乱”;在我的测试分支上,如何修复它?
我习惯使用git。 我的正常工作流程是:Git “关于船长的公关”;“混乱”;在我的测试分支上,如何修复它?,git,github,merge,pull-request,Git,Github,Merge,Pull Request,我习惯使用git。 我的正常工作流程是: dev --> test --> master 我喜欢它,而且效果很好 现在,在我与其他远程开发人员合作的一个项目中,我被指示在我们的公共存储库中包含对其他人工作的请求 我收到一封公关邮件,去了github,在快速检查后点击了合并按钮。然后我去了我的本地回购,做了git拉原始主机,新的变化出现在那里。都很好 但问题是。最初,我被要求对受PR影响的一些文件进行更改。我从事的是dev,并被推到test——但不是master 因此,master和
dev --> test --> master
我喜欢它,而且效果很好
现在,在我与其他远程开发人员合作的一个项目中,我被指示在我们的公共存储库中包含对其他人工作的请求
我收到一封公关邮件,去了github,在快速检查后点击了合并按钮。然后我去了我的本地回购,做了git拉原始主机
,新的变化出现在那里。都很好
但问题是。最初,我被要求对受PR影响的一些文件进行更改。我从事的是dev
,并被推到test
——但不是master
因此,master
和test
自然存在差异。我想我可以通过在git checkout测试
之后简单地发出git merge master
来解决这些问题
让我(最初)感到惊讶的是,我现在在test
中有了两个变化——我的同事和我的同事,而git diff master
从内部test
显示了差异
我现在明白了——我必须首先放弃我过时的更改
考虑到当前的变化,并且必须更新
dev
,我现在如何修复它?我可以撤消test
上的合并并从头开始吗?我认为最好的方法是在新的master上重新设置test
的基础
git checkout test
git rebase master -i
您可以在重基期间删除过时的提交。我求助于手动执行
在最初的恐慌平静下来后,我意识到这些变化很小,只影响了5个文件
所以我去了那里,把它们从master
复制到/tmp
,签出test
,然后复制回来
现在受影响目录的master
和test
之间没有差异。呸。谢谢@Igal S,这可能是一个很好的解决方案。但在看到rebase交互式文件提交,看到我有不同的提交,其中一些我需要,一些没有,我感到恐慌哈哈。我求助于手工。。。。