2017-01-01 90 views
2

我试图cherrypick这个承诺摘樱桃从不同的回购

https://github(dot)com/AICP/frameworks_base/到 HTTPS提交/ android_frameworks_base

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

git cherry-pick 59ebfb7 

,并得到了

fatal: bad revision '59ebfb7' 

我也试过:

git cherry-pick 59ebfb7146616e57c15469d7ea85c4362c2fab3c 

,并得到这个错误

fatal: bad object 59ebfb7146616e57c15469d7ea85c4362c2fab3c. 

我做错了,没有试图从昨晚开始挑选那些提交。
我无法做到这一点,有人能按顺序给我指出正确的命令吗?

+0

你能解释一下你是什么意思吗?我创建了一个名为master的新分支并切换到它?您是否在现有存储库中为https://github.com/AICP/frameworks_base添加了新的远程设备? – Guildencrantz

回答

3

您需要在其他回购添加的远程第一:

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 
+0

我试着像你说的那样.. – Gopinaidu

+0

@Gopinaidu你使用了以斜线(/)结尾的旧网址。正如我所说,我编辑了答案。另外,您需要在另一个全新的空文件夹中执行此操作:说'〜/ test',并且不要忘记'git clone'部分之后的'cd〜/ test/android_frameworks_base':您需要克隆其他git命令的回购。 – VonC

+0

@Gopinaidu在http://stackoverflow.com/posts/41413383/revisions看看,看看有什么我已删除 – VonC

0

你并不需要创建一个新的分支,只是克隆目标分支通过@Vonc的建议,然后运行以下命令:

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