(git):如何从上游分支提交特定提交?
问题描述:
我有这个(GIT回购):(git):如何从上游分支提交特定提交?
A--B--C--D ->master
\--E ->dev
而且我要带只承诺D
分支dev
(D
不依赖于C
),使:
A--B--C--D ->master
\--E--D' ->dev
但d '合并后不应添加到主人:
A--B--C--D--E' ->master
\--E--D'/ ->dev
这是因为我想带上而不必污染dev
新文件C
(代表另一个大合并)增加。
我猜我需要使用git rebase
,但我无法猜测如何。
答
你想用git cherry-pick
更新。我假设你的遥控器被命名为“原点”(但用远程回购的真实名称替换“原点”)。我假设你有两个当地分行,分别命名为master
和dev
。我会假设提交D在origin/dev
。你可以用下面的摘樱桃d:
$ git fetch origin # Assuming the upstream remote's name is "origin"
$ git checkout dev # Check out your local "dev" branch
$ git cherry-pick $COMMIT_D # Replace "COMMIT_D" with the hash for commit D
现在,你只需要在dev
提交d的变化。