假设我有一个master
分支,并在defect
之外创建了master
分支。 defect
分支正在master
之上添加更改,但master
分支正在这些更改之间合并到defect
分支。当我git diff master HEAD
时,我会看到master
之上的具体更改。但是,因为这些更改分散在与master
的合并交错的各种提交中,所以我没有可以恢复的单个提交。我需要创建一个新的提交,它将撤消master
和defect
分支之间的所有差异,以便我可以将defect
分支合并到另一个(发布)分支以撤消由此创建的更改defect
分支。从理论上讲,我可以将所有文件从master
复制到defect
分支并作为新提交提交,因为这样可以有效地撤消这些更改。但是我怎么能用git来实现呢?
答案 0 :(得分:1)
因此,如果我理解正确,您需要更改defect
以使其内容与master
匹配。如果是这种情况,请执行:
git checkout master -b temp
git reset --soft defect
git commit -m "Updating defect to reflect master"
git checkout defect
git merge temp
git branch -d temp