PR on master "messed" 我的测试分支,我该如何解决?
PR on master "messed" up my test branch, how do I fix it?
我习惯用git。
我的正常工作流程是:
dev --> test --> master
我喜欢它,而且效果很好。
现在,在我与其他远程开发人员合作的项目中,我被指示在我们的公共存储库中包含其他人工作的拉取请求。
我收到一封 PR 电子邮件,转到 github,快速检查后点击合并按钮。然后我去了我的本地仓库,做了 git pull origin master
,新的变化出现在那里。一切顺利。
但这就是问题所在。我最初被要求对受 PR 影响的一些文件进行更改。我曾在 dev
上工作,并推到 test
- 但不是 master
.
所以自然地,master
和test
有区别。我想我可以通过在 git checkout test
之后简单地发出 git merge master
来让他们离开。
令我(最初)惊讶的是,我现在在 test
中有两个变化 - 我的同事和我的,test
内部的 git diff master
显示了差异。
我现在明白了 - 我必须首先转储我过时的更改。
变得担心,并且不得不更新 dev
,它有当前的变化,我现在该如何解决?我可以撤消 test
上的合并并从头开始吗?
我认为对你来说最好的方法是在新的 master
上重新设置 test
git checkout test
git rebase master -i
您可以在变基期间删除过时的提交。
我不得不手动完成。
经过最初的恐慌冷静下来后,我意识到变化很小,只影响了 5 个文件。
所以我去了那里,将它们从 master
复制到 /tmp
,检查了 test
并重新复制了它们。
受影响目录的 master
和 test
之间现在没有差异。呸
我习惯用git。 我的正常工作流程是:
dev --> test --> master
我喜欢它,而且效果很好。
现在,在我与其他远程开发人员合作的项目中,我被指示在我们的公共存储库中包含其他人工作的拉取请求。
我收到一封 PR 电子邮件,转到 github,快速检查后点击合并按钮。然后我去了我的本地仓库,做了 git pull origin master
,新的变化出现在那里。一切顺利。
但这就是问题所在。我最初被要求对受 PR 影响的一些文件进行更改。我曾在 dev
上工作,并推到 test
- 但不是 master
.
所以自然地,master
和test
有区别。我想我可以通过在 git checkout test
之后简单地发出 git merge master
来让他们离开。
令我(最初)惊讶的是,我现在在 test
中有两个变化 - 我的同事和我的,test
内部的 git diff master
显示了差异。
我现在明白了 - 我必须首先转储我过时的更改。
变得担心,并且不得不更新 dev
,它有当前的变化,我现在该如何解决?我可以撤消 test
上的合并并从头开始吗?
我认为对你来说最好的方法是在新的 master
test
git checkout test
git rebase master -i
您可以在变基期间删除过时的提交。
我不得不手动完成。
经过最初的恐慌冷静下来后,我意识到变化很小,只影响了 5 个文件。
所以我去了那里,将它们从 master
复制到 /tmp
,检查了 test
并重新复制了它们。
受影响目录的 master
和 test
之间现在没有差异。呸