我有几个分支,我不时地将某些提交应用到我的工作副本。最初,我尝试了樱桃采摘,但我不希望在目标分支之后提交。

所以我做了cherry-pick + reset HEAD~1 -soft

有什么更简单的像樱桃选择工作副本?


当前回答

如果您正在使用终端

git cherry-pick -n <HASH>

如果您正在使用Intellij Idea

Settings -> Version Control -> git
untick commit automatically on cherry-pick 

其他回答

使用'-n'标志来选择"no commit"

请看这里:http://git-scm.com/docs/git-cherry-pick

git cherry-pick -n <HASH>

然后取消阶段性的变化

git reset

我得到错误错误:服务器/元数据/元数据-preui-prod.xml:没有这样的文件或目录

现在我这样做

git checkout SHA—server/metadata && git reset—server/met adata

Old

git show SHA -- 文件1.txt文件2.txt |去申请 -

或所有来自SHA的文件

git show sha |去申请 -

如何git-cherry-pick只更改某些文件?

你也可以使用apply而不是cherry-pick,如果你只是想应用你在提交中所做的所有更改到你的工作目录:

git show <commit> | git apply

这将应用中所做的更改,但不会将其添加到登台或创建提交。

对于IntelliJ用户

>版本控制> Git:取消勾选自动提交

更新

默认情况下,该特性被移除并设置为true。 有很多投诉,也许他们会把它退回去。

与此同时,你可以从提交视图中使用“Cherry-Pick Selected Changes”(如Neo共享的线程中所述)实现相同的结果:

如果您正在使用终端

git cherry-pick -n <HASH>

如果您正在使用Intellij Idea

Settings -> Version Control -> git
untick commit automatically on cherry-pick