真诚地,我不知道如何完美地说出一切,但试试吧。
我正试图将樱桃挑选到我的远程分支(假设sv / abc) 例如:
git cherry-pick b965749428dd3ec934614364d73158ac0bc121f8
首先,我收到错误消息:
error: could not apply b965749... Changes 123
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit -c b965749'
myAccount$ git status
# On branch sv/abc
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both modified: fileA
# both modified: fileB
#
no changes added to commit (use "git add" and/or "git commit -a")
所以,我继续通过以下方式更改两个文件中的冲突:
Vim文件
删除<<<<<<HEAD
删除>>>>> xxx
和========
之间的所有内容
然后git add <file>
这是奇怪的部分,当我再次发出git status时,它似乎没有准备好被提交,我的意思是什么都没有上演
然后git commit -c b965749
表示没有任何提交
然后git push
说明它已经是最新的
然后我所做的就是重新尝试一切,但这一次,发出git reset <file>
嗯,这次它确实很神奇,但我面临的新问题是这个哈希标记以前是由不同的作者提交的。
当我发出git push
时,我收到了“无效作者”的错误消息
我如何离开这里?
答案 0 :(得分:0)
您通过删除所有更改来解决冲突。因此,git status
确定此文件在结果提交中应保持不变,因此它将变为未分级。当你对所有文件执行此操作时,提交变为空,因此记录它没有意义。
你要求挑选提交,但不要整合任何改变,那你为什么一开始就挑选?
答案 1 :(得分:0)
当您执行删除部分时,您正在删除更改,因此文件与启动合并时的文件一样,因此没有更改。
我真的想要在您的存储库中进行合并提交,您可以执行git commit --allow-empty,因为您的提交没有进行任何更改。