问题标签 [cherry-pick]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
51711 浏览

git - 如何结束 Git Cherry-Pick?

昨天我在我的主分支中挑选了两个提交,其中一个导致了合并冲突,我解决了它们,提交并将它们推送到原点。今天,当我收到以下错误时,我试图从服务器中提取:

Git状态读取:

我尝试了以下方法无济于事:

关于如何解决这个问题的任何想法?提前致谢!

0 投票
6 回答
25886 浏览

git - 如何将一个大的 Git 分支拆分为许多较小的分支?

我已经从 SVN 导入到 Git,现在我有一个大分支,像这样:

  • 处理特征 C
  • 处理功能 B
  • 处理特征 C
  • 处理特征 C
  • 处理功能 B
  • 处理特征 A

我想要单独的功能分支,用于 A、B、C。我正在挑选新分支的提交,但这不会将它们从原始分支中删除,所以我必须手动跟踪我已经拉出的那些。

大约有 800 个提交需要拆分,可能还有 50 个功能/错误修复。

如果能以某种方式在 git 日志中反映我已拉出的那些,那就太好了,这样我就知道我已经完成了哪些。这可能吗?

我可以 rebase 整个分支,跳过我已经退出的提交,但我担心这会导致很多冲突。我不想每次拉出提交时都解决 500 个冲突。

从一个 uber 分支提取提交到较小的功能分支的最佳方法是什么,同时跟踪您的进度?

0 投票
5 回答
80542 浏览

git - Git cherry-pick 语法和合并分支

所以我之前做过无数次樱桃挑选,现在看来我必须在生活中失败,我正试图从一个分支挑选到另一个分支,这应该很容易,但我却得到一个关于它是合并的错误但是没有给出-m?

看起来不对……应该是:

从什么时候开始我必须提供 -m 功能?

0 投票
1 回答
6643 浏览

git - 如何使用 git-subtree 进行特定提交?

我正在使用 Avery Pennarun 的 git-subtree,它是 git 的扩展。

如何使用 git subtree 从子仓库中挑选提交到我的主仓库中?另外,在我已经对该前缀执行 git subtree pull 之后,如何转到子仓库历史记录中的特定提交?

我主要在壁球提交模式下运行它。

0 投票
1 回答
81 浏览

git - Git:寻找新的樱桃

我已经根据Adam Spiers 在之前的 SO 线程中的回答设置了一个流程,以定期将 Git 存储库发布到 SVN 存储库中的路径。一切都很好,但有一件我还没有弄清楚。当我使用 获取后续 Git 更改时cherry-pick,我如何确定在这个 Git 端发生了哪些新更改,需要将其挑选到 SVN 端?

更具体地说,在我将 Git 历史初始推送到 SVN 之后,我现在坐在一个master与 Git 起源具有相同内容和补丁历史的分支上,但它origin/master基本上与它的完整历史不同:

现在,我获取新的上游更改:

在这一点上,我需要弄清楚哪些修订需要精心挑选,然后我会挑选它们并做一个git svn dcommit. 但我不知道如何获得樱桃清单。我已经尝试了各种git cherry命令,并且都git cherry origin master报告git cherry master origin了每边基本上每一个变化的长列表。

我应该求助于解析日志文件中的最后一个樱桃挑选吗?我正在使用git cherry-pick -x,所以我确实有记录。

0 投票
1 回答
3281 浏览

git - 在 Git 中合并除一个分支之外的所有更改的最简单方法是什么?

这有点像我想从分支中挑选除一个之外的所有提交,但我想在一个命令中做到这一点......

• 我们剪切了一个发布,它创建了一个分支

• 该版本将我们所有 pom 中的版本号、分支上的版本号更改为一个数字,而 master 上的版本号更改为不同的数字

• 我已对分支提交了许多其他更改,并希望将这些更改复制回 master

• 我已将分支合并回master,这带来了代码更改和版本号更改,在每个pom 中产生冲突

我有什么简单的方法可以将所有 pom 文件恢复为合并前的内容,然后作为合并的结果提交?

0 投票
1 回答
143 浏览

git - 如何使用 Git-cherry-pick 将 branch1 上的文件 X 中的补丁添加到 branch2 上的文件 X'?

尊敬的 Git 用户,

这些帖子似乎回答了我的问题,但要么我对 Git 太陌生,无法正确掌握和执行它们,要么它们实际上并没有回答我的问题:

如标题所示,我在 branch1 上有一个文件 X,在 branch2 上有一个文件 X'。文件 X' 是在几次提交前从文件 X 分支的(到文件的 X 和 X'),我还更改了文件名(即,从 X 到 X')。该文件基本保持不变。我想要实现的是将对文件 X 所做的一些更改带到 X'。更改仅限于两个提交,commit_a 和 commit_b。理想情况下(和可选)我想调用我的合并工具来手动接受(或不接受)每个 commit_a 和 commit_b 中的特定代码行,并将它们应用于 X'。这可能吗?如果可以,怎么办?FWIW,我只在本地使用 Git;不与其他合作者/存储库交互。试图应用上述帖子的答案,我不能只关注感兴趣的文件(branch1 X & branch2 X') - Git 一直在涉及两个分支中的其他文件,包括文件 Y 和 Z(两个分支的)以及 branch2 中的 X,但从不涉及 branch2 中的 X'。我还想将分支 1 和 2 分开,所以我看不到合并命令在这里是如何工作的。

作为 Git(和版本控制)的新手,我还质疑我的工作流程是否对未能实现我的目标负责。

非常感谢患者的示例答案!

卡尔

0 投票
1 回答
1876 浏览

git - 将提交应用于多个发布分支 - Git Rebase 或 Cherry-Pick?

我正在开发一个带有 Master 分支的项目,当然:P 和随着时间的推移创建的多个发布分支。我正在使用的版本控制是 Git,我正在寻找一种方法来将在一个发布分支中进行的错误修复(例如)应用到其他分支,如果可能的话自动。IE..

如果我修复了 v1 中发现的错误,并且需要在 v2 和 v3 中应用相同的修复(并且仅修复),有没有办法在 Git 中方便地做到这一点?

我是 Git 的新手,但我认为我可以选择 Chery-pick 提交并应用它,但我想知道分支是否需要在层次结构中直接相关?是否可以从 v1 下的“错误修复”到 v2 和 v3 进行挑选或变基?(或 v3 到 v2 等)Afaik,rebase 将重播所有提交,所以我认为cherry-pick 是我正在寻找的,但我不确定如何实现这一点。我看到从子分支到父分支的帖子。我想做什么可能吗?

干杯。

0 投票
1 回答
3428 浏览

git - 添加 repo 作为你的遥控器和樱桃选择

如何将此存储库添加为远程和樱桃选择增量补丁。 https://github.com/adridu59/semc-7x30-kernel-ics/commits/master-V2?page=6

我只需要从这个 repo(而不是从其他站点)更新 android 内核

(我知道输入什么)但有错误

0 投票
4 回答
8568 浏览

git - git cherry-pick 到另一个分支

我想知道是否有办法在不签出该分支的情况下将一个提交复制到另一个分支。

例如,我有两个分支:masterparallel_version.

我在parallel_version分支上,我在这些分支的通用文件中发现了一个错误。

我已经修复并承诺了。假设我使用的是 git-svn,如何将此提交复制到另一个分支?

通常我会这样做:

有更好的方法吗?