Git,'致命:樱桃选择失败'

时间:2013-05-08 14:36:48

标签: git cherry-pick

我正在分支X。我做了一个提交并推了推。

然后我想cherry-pick分支Y。但由于存在一些未合并的文件,我收到以下消息:

error: 'cherry-pick' is not possible because you have unmerged files.
hint: Fix them up in the work tree,
hint: and then use 'git add/rm <file>' as
hint: appropriate to mark resolution and make a commit,
hint: or use 'git commit -a'.
fatal: cherry-pick failed

现在,我只想删除我的分支Y,然后重新创建分支Y,然后想要手动编辑我试图挑选的文件。

目前,我无法删除分支,因为它是我的工作分支。 我不能checkout任何其他分支。尝试更改分支时出现以下错误。

mod/assign/locallib.php: needs merge
error: you need to resolve your current index first

我只需删除分支Y,而不会丢失分支X上的任何内容。

编辑#1

我编辑了文件mod/assign/locallib.php

在做git status时,我得到:

# On branch MDL-38267_24
# Unmerged paths:
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
#   both modified:      mod/assign/locallib.php
#

我应该在git add ..添加哪个文件?

2 个答案:

答案 0 :(得分:13)

由于您已经编辑了冲突文件,因此只需要

git add mod/assign/locallib.php

然后

git cherry-pick --continue

答案 1 :(得分:2)

您尝试进行合并(通过git mergegit pull),并且文件中包含未解决的冲突。如果您执行git status,您可能会看到列出的文件“被两者更改”。在做其他事情之前,你需要先处理好这件事。

执行git mergetool,它会一次调出一个文件。修复文件以解决冲突,然后您就可以继续了。