问题标签 [git-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 投票
28 回答
909906 浏览

git - 如何在 Git 中选择性地合并或选择来自另一个分支的更改?

我在一个新项目上使用 Git,该项目有两个并行的——但目前是实验性的——开发分支:

  • master: 现有代码库的导入以及我通常确定的一些修改
  • exp1: 实验分支#1
  • exp2: 实验分支#2

exp1exp2代表两种截然不同的架构方法。在我走得更远之前,我无法知道哪个(如果有的话)会起作用。当我在一个分支中取得进展时,我有时会进行一些对另一个分支有用的编辑,并且只想合并那些。

将选择性更改从一个开发分支合并到另一个分支的最佳方法是什么?

我考虑过的方法:

  1. git merge --no-commit然后手动取消暂存大量我不想在分支之间通用的编辑。

  2. 手动将公共文件复制到临时目录中,然后git checkout移动到另一个分支,然后将更多手动文件从临时目录中复制到工作树中。

  3. 上面的一个变种。暂时放弃exp分支并使用两个额外的本地存储库进行实验。这使得手动复制文件更加简单。

所有这三种方法似乎都很乏味且容易出错。我希望有更好的方法;类似于过滤器路径参数的东西,它会使git-merge选择性更强。

0 投票
8 回答
136314 浏览

git - 部分使用 Git 挑选提交

我正在研究 2 个不同的分支:发布开发

我注意到我仍然需要将提交给发布分支的一些更改集成回开发分支。

问题是我不需要所有的提交,只需要某些文件中的一些大块,所以一个简单的

不成功。

当我做一个

我可以看到差异,但真的不知道将其部分应用于我当前的工作树的好方法。

0 投票
10 回答
426195 浏览

git - 如何挑选一系列提交并将它们合并到另一个分支中?

我有以下存储库布局:

  • 主分支(生产)
  • 一体化
  • 在职的

我想要实现的是从工作分支中挑选一系列提交并将其合并到集成分支中。我对 git 很陌生,我无法弄清楚如何在不弄乱存储库的情况下准确地做到这一点(在一个操作中挑选提交范围,而不是合并)。对此有任何指示或想法吗?谢谢!

0 投票
1 回答
74 浏览

git - 将 1 个分支的 1 个提交合并到主分支?

我读过这本书关于 git 分支的部分。

我创建了一个名为“实验”的分支。我切换到该分支并在那里进行 2 次提交。因此,如果我可以将实验的后续提交(2 次提交中的第 2 次)合并到主分支?

谢谢你。

0 投票
1 回答
16395 浏览

git - 如何在 Git 的分支之间移动提交?

我确信这是一个简单的问题,已经被询问和回答,但我不知道要搜索什么术语。我有这个:

我在一个分支上提交了 C、D 和 E(仅限本地),但后来我意识到 D 和 E 确实独立于 C。我想将 C 移动到它自己的分支,并保留 D 和 E 以备后用。也就是说,我想要这个:

如何从 D 和 E 下拉出 C?

0 投票
2 回答
204329 浏览

git - 如何从一个分支到另一个分支

我有 2 个分支,master并且dev.

我在分支上,我想从todev中挑选 1 个提交。所以我做了masterdev

但是当我这样做时git statusgitx我在 git 历史中看不到我的提交be530cec7748e037c665bd5a585e6d9ce11bc8ad

dev如何在分支中查看我的提交?

0 投票
1 回答
397 浏览

git - 用于开发和实时网站的 Git

我将 Git 用于我的开发和实时网站,并将每个网站都保存在自己的分支“dev”和“master”中。当我在“dev”分支上完成测试时,我将我的更改合并回“master”,但是有几个文件我需要保留特定于“dev”分支/服务器。

即 index.php 在所有页面顶部显示“开发服务器”消息,并且没有 Google Analytics 跟踪,我想保持这种方式。

还有一些配置文件在我合并时不应该改变。

我一直在使用cherry-pick,但这很慢而且令人沮丧……是更好的方法吗?

0 投票
5 回答
191782 浏览

git - 合并到特定的提交

newbranchmastergit 中的分支创建了一个新分支。现在我已经做了一些工作,想合并newbranchmaster;但是,newbranchnewbranchmaster.

我使用过cherry-pick,但它显示了使用正确选项的消息:

我可以使用 gitmerge来代替吗?

0 投票
5 回答
453348 浏览

git - git cherry-pick 说“...38c74d 是一个合并,但没有给出 -m 选项”

我在我的主分支中进行了一些更改,并希望将这些更改带到上游。当我挑选以下提交时。但是,我卡在 fd9f578 上,git 说:

git 试图告诉我什么,并且挑选合适的东西在这里使用?master 分支确实包含对上游分支中已修改的文件的更改,因此我确信会有一些合并冲突,但这些冲突并不算太糟糕,无法理顺。我知道在哪里需要进行哪些更改。

这些是我想带到上游的提交。

0 投票
12 回答
1623445 浏览

git - 用 Git 挑选提交是什么意思?

最近,我被要求cherry-pick提交。

那么在 git 中挑选提交是什么意思呢?你怎么做呢?