今天在使用git cherry-pick同步分支的时候遇到了一点问题,记录一下。
1.git cherry-pick + log id 出现
fatal: bad object 77c6905dcf7f946cff594a69a33d12e22bedfae4
场景及出现错误的原因:
我的情况是在B分支的同步A分支的一个commit,出现了如标题的错误。我是直接在web上看到A分支新提交的这个commit,然后我直接在本地的B分支中进行git cherry-pick xxx。就出现了这个问题。经过尝试问题是出在了我没有切到B分支之前,也就是在我还在A分支的时候,没有pull一下。总结过来就是git cherry-pick是本地特性,本地要有这个commit才可以被git cherry-pick。
2.git cherry-pick + log id 出现
error: could not apply 77c6905dcf7f946cff594a69a33d12e22bedfae4 Added Copy Patron button to circ-toolbar
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
就跟普通的冲突一样,手工解决:
git status # 看哪些文件出现冲突
both modified: app/models/MainActivity.java
**2.2 $ vim app/models/MainActivity.java # 手动解决它。 **
2.3 $ git add app/models/MainActivity.java
2.4 git commit -c + log id