我已经通过Github V3 Rest API成功实现了自动文件创建/更新,但唯一的缺点是每个文件都有一个提交。
对多个文件也可以这样做,但不幸的是,它涉及到一些我还没有掌握的概念,我需要一段时间才能到达那里,因为我的TODO列表中有更多紧急事项。
与此同时,我完全可以接受这一点,或者简单地压缩最后N个提交,我认为这应该相对容易,因为在本地这只是的问题
git reset --soft HEAD~N
git commit -m ".."
但我在文档或在线上找不到任何东西
所以我的问题是:如何使用Github API以非交互方式压缩最后N个提交?
Ps:我不在乎是v3还是v4,只要我完成
我没有直接通过API看到一个挤压功能。
您需要:
- 通过create-ref API在HEAD-N提交处创建分支
- 将当前分支重置为HEAD-NSha,强制布尔参数设置为true
- 创建从新分支到旧重置分支的拉请求
- 合并PR,
merge_method
参数设置为挤压
相当复杂,但它应该可以工作(完全通过脚本,而不必克隆存储库(。