git使用分支冲突

时间:2014-01-20 20:46:40

标签: php git magento

在我的项目中,例如我有两个分支(让它为br_1br_2)。在每个分支中我都会遇到一些问题。我在这期间遇到了一些问题:

对于某些问题(在br_2上)我需要重命名其中一个表列。所以,一切都好,我制作升级脚本(使用Magento),重命名列,工作正常。当我切换到另一个分支时出现问题。(在这个分支中,我的旧脚本被要求使用旧名称列。)

所以,现在,在br_1上有一个错误。

First way是重命名表列,并在此分支上执行您想要的操作。但在此之后我需要再次执行此操作,然后再将所有分支合并到主控之前。

Second way是将{srcipt on br_1旧列的名称更改为新列。

有更清洁的方法来解决它吗?

1 个答案:

答案 0 :(得分:2)

您可以merge br_2进入br_1,这将br_2br_1中遗漏的所有历史记录(提交)并将其合并到最顶层br_1的变化。或者,如果br_2中的修补程序包含在单个提交中(例如[548662a4] Fix name of table column),则可以cherry-pick提交br_1

第一个选项(从br_2获取所有历史记录):

git checkout br_1
git merge br_2
// Potentially fix and merge conflicts, and re-commit

第二个选项(从br_2获取单个提交):

git log br_2
// commit 548662a48154cf741649892cefc421135c65caf1
//   Fix name of table column

git checkout br_1
git cherry-pick 548662a4
// Potentially fix and merge conflicts, and re-commit