【发布时间】:2018-04-26 16:45:04
【问题描述】:
我有一个分支“mybranch”,它是从 master 创建的,但过去几个月没有更新。我想从主分支的特定提交更新“mybarch”。我想忽略“mybarch”中的任何其他内容,并使其与主分支的特定提交保持同步。我怎样才能做到这一点?我在试这个,听起来可以吗?这导致了许多冲突,而我想接受来自主人的东西。
git checkout mybranch
git merge --squash master <commit-id>
【问题讨论】:
-
如果分支的历史不重要你可以
git checkout -B mybranch <commit-id> -
@Opal 如果我没记错,这将创建新分支,但我想更新现有分支
-
是的,它会的;)这就是为什么我提到历史不相关。怎么样:
git merge --squash -X theirs <commit-id>..<master-head> -
@Opal 试过这个,但似乎还有另一个我之前没有注意到的问题 - 假设 master 有 A+B 而 mybranch 有 A+C,合并后我会得到 A+B+我想要 mybranch 的 C 与 master 相同,即 A+B