在 Git 中,假设我一直在本地分支上工作:
Common ancestor
/\
A \
/ X
B \
/ Y
C remote
local
我做了本地提交 A、B 和 C,同时远程分支继续提交 X 和 Y。所以我做了一个拉取并得到:
Common ancestor
/\
A \
/ X
B \
/ Y
C /remote
\ /
\ /
\ /
\/
M
local
如果我现在推送,远程历史将包括我所有的 A、B、C 和 M 提交......但这不是我想要的。
我只想推送一个与本地分支不同的提交,因此远程分支看起来像这样,没有任何合并复杂性:
Common ancestor
\
\
X
\
Y
\
N
remote
我怎样才能做到这一点?