问题描述
我有一个仓库,其中有两个分支: 主人和 master_one。 我在 master_one 中不存在的 master 分支中有一个提交(commit1)。 现在我又从 master_one 创建了一个分支“temp”。 我想使用 PyGithub 将 commit1 中存在的更改合并到我的分支 temp。 如果我使用以下代码从 master 创建一个分支,我可以合并它:
repo.merge(branch_name,commit_sha_key,"merge to master")
其中 commit_sha_key
是 commit1 的 sha。
但同样的事情我无法为我从 master_one 创建的临时分支做。
有什么办法吗? 谢谢
解决方法
GitHub api 不支持 Cherry pick,因此您必须从命令行执行此操作:
# ~~~ snip initialize git repo locally,maybe using git clone ~~~
import os
os.system(f"git cherry-pick {commit_sha_key}")
os.system("git push") # you may need to do "git push origin temp"
# ~~~ snip ~~~ cleanup,if you want.