Cherry-pick承诺来自不同的回购

时间:2017-01-01 04:26:32

标签: git git-cherry-pick

我试图点赞这个提交

https://github(dot)com/AICP/frameworks_base/到 https:// github(dot)com / Gopinaidu7 / android_frameworks_base

我创建了一个名为master的新分支并切换到它 然后我做了:

git cherry-pick 59ebfb7

它得到了

fatal: bad revision '59ebfb7'

我也尝试过:

git cherry-pick 59ebfb7146616e57c15469d7ea85c4362c2fab3c 

并收到此错误

fatal: bad object 59ebfb7146616e57c15469d7ea85c4362c2fab3c.

我做错了,自昨晚以来就试图挑选这些提交 我无法做到,有人能按顺序指出我的正确命令吗?

3 个答案:

答案 0 :(得分:4)

您需要首先将其他repo添加为远程:

 git clone  https://github.com/Gopinaidu7/android_frameworks_base
 cd android_frameworks_base
 git remote add other https://github.com/AICP/frameworks_base

然后获取:

 git fetch other

现在你可以使用SHA1挑选。然后推。

如果挑选的提交是合并提交:

git cherry-pick -m 1 59ebfb7

答案 1 :(得分:0)

您不需要创建新分支,只需按@Vonc的建议克隆目标分支,然后运行此命令:

git checkout target_branch
git fetch https://github.com/AICP/frameworks_base && git cherry-pick 59ebfb7

答案 2 :(得分:0)

每当您尝试选择一个提交并且您在本地没有该远程分支时,都会出现“错误修订”消息。

解决方案

git fetch origin <remote_committed_branch>
git cherry-pick <commit-id>