我在 github.com 上创建了一个新存储库,然后将其克隆到我的本地计算机
git clone https://github.com/usrname/mathematics.git
我在文件夹下添加了 3 个新文件mathematics
$ tree
.
├── LICENSE
├── numerical_analysis
│ └── regression_analysis
│ ├── simple_regression_analysis.md
│ ├── simple_regression_analysis.png
│ └── simple_regression_analysis.py
现在,我想使用 Python 将 3 个新文件上传到我的 GitHub,更具体地说,是 PyGithub。这是我尝试过的:
#!/usr/bin/env python
# *-* coding: utf-8 *-*
from github import Github
def main():
# Step 1: Create a Github instance:
g = Github("usrname", "passwd")
repo = g.get_user().get_repo('mathematics')
# Step 2: Prepare files to upload to GitHub
files = ['mathematics/numerical_analysis/regression_analysis/simple_regression_analysis.py', 'mathematics/numerical_analysis/regression_analysis/simple_regression_analysis.png']
# Step 3: Make a commit and push
commit_message = 'Add simple regression analysis'
tree = repo.get_git_tree(sha)
repo.create_git_commit(commit_message, tree, [])
repo.push()
if __name__ == '__main__':
main()
我不知道
- 如何获取
sha
字符串repo.get_git_tree
- 如何在第 2 步和第 3 步之间建立连接,即推送特定文件
就个人而言,PyGithub 文档是不可读的。经过长时间的搜索,我无法找到合适的 api。