3

git cherry develop feature/ABC - 1014d04c60efccb5d0b8762af1371831bb234b17

git cherry 命令正确显示提交1014d04(标记为-)可以在针对开发的 rebase 期间从功能分支中删除。因为它已经被挑选出来开发了。

但是 git log cherry 命令似乎不起作用(标有 +)

git log --cherry --oneline develop..feature/ABC + 1014d04 adding some comment

git log --cherry-mark --oneline develop..feature/ABC + 1014d04 adding some comment

我上线了

git --version git version 2.12.0.windows.1

4

1 回答 1

3

和选项有效--cherry-mark--cherry要求您采用对称差异。从以下描述中可以更清楚地看到--cherry

--cherry

    的同义词--right-only --cherry-mark --no-merges;有用的是将输出限制为我们这边的提交,并用git log --cherry upstream...mybranch类似于git cherry upstream mybranch.

注意这里的三个点,它们调用对称差分代码。这需要两个分支上的提交,而不是两个分支上的提交,即,它排除了它们的合并基础和任何祖先提交。因此,选择的提交必须只能从左侧的 ID(在本例中)upstream或右侧的 ID ( mybranch) 访问,但不能同时从两者访问。该--left-right选项会将每个提交标记为哪个“腿”到达它,同时--right-only丢弃选定的左侧提交,但仅标记等效提交之后。

(可以在没有or情况下使用,但我认为它不是那么有用:您无法分辨提交来自哪一侧。混合用左/右标记(!)替换樱桃标记。)--cherry-mark--left-only--right-only--cherry-mark--left-right

于 2017-03-21T23:48:33.083 回答