尝试从功能分支中挑选:否 "cherries"?
Trying to cherry-pick from a feature branch: No "cherries"?
(我是第一次尝试使用git的cherry picking,所以可能我误解了它是什么或者它能做什么)
在功能分支中处理一些新功能时(为简单起见,我们将其称为 next
),我发现了当前 master
中的一些错误,我修复了 "on the fly"(这可能不是最好的主意)。现在我认为功能分支已经完成,我想挑选 next
到 master
中修复的部分或全部错误,以便在功能发布之前发布错误修复版本。
所以我检查了 master
并尝试了(在阅读 git-cherry 手册页之后):
git cherry
git cherry next
git cherry -v next
git cherry -v next master
但是 none 的命令确实输出了任何东西,尽管 next
和 master
之间存在巨大差异。
那么问题是什么?是我做错了什么,还是我对摘樱桃有误解?手册引用了一些 "origin" 分支,而我的分支是本地的。
如果樱桃采摘是错误的工具,那么实现我想要做的事情的正确程序是什么?
git cherry
和 git cherry-pick
是两个不同的命令。
来自来源 git cherry:
git cherry [-v] [<upstream> [<head> [<limit>]]]
将向您显示 upstream
上 head
中缺失的提交 ID。在您的情况下,git cherry next master
没有显示任何内容,因为 master
上没有提交,next
分支上没有提交。您可以通过其他方式检查 git cherry master next
,您将看到所有 next
提交 ID,这些 ID 在 master
.
上不存在
一旦你知道提交的 id,你想 cherry pick 用 git cherry-pick commitID
做这个
(我是第一次尝试使用git的cherry picking,所以可能我误解了它是什么或者它能做什么)
在功能分支中处理一些新功能时(为简单起见,我们将其称为 next
),我发现了当前 master
中的一些错误,我修复了 "on the fly"(这可能不是最好的主意)。现在我认为功能分支已经完成,我想挑选 next
到 master
中修复的部分或全部错误,以便在功能发布之前发布错误修复版本。
所以我检查了 master
并尝试了(在阅读 git-cherry 手册页之后):
git cherry
git cherry next
git cherry -v next
git cherry -v next master
但是 none 的命令确实输出了任何东西,尽管 next
和 master
之间存在巨大差异。
那么问题是什么?是我做错了什么,还是我对摘樱桃有误解?手册引用了一些 "origin" 分支,而我的分支是本地的。
如果樱桃采摘是错误的工具,那么实现我想要做的事情的正确程序是什么?
git cherry
和 git cherry-pick
是两个不同的命令。
来自来源 git cherry:
git cherry [-v] [<upstream> [<head> [<limit>]]]
将向您显示 upstream
上 head
中缺失的提交 ID。在您的情况下,git cherry next master
没有显示任何内容,因为 master
上没有提交,next
分支上没有提交。您可以通过其他方式检查 git cherry master next
,您将看到所有 next
提交 ID,这些 ID 在 master
.
一旦你知道提交的 id,你想 cherry pick 用 git cherry-pick commitID