XiaO

批量删除 GitHub 仓库

XiaO / 2020-11-18


1. 创建具有删除权限的 token

settings -> Developer settings -> Personal access tokens -> Generate new token

选择 delete_repo,记录该 token。

2. 构建需删除仓库的文本 repos.txt

name/repository1
name/repository2
……

3. 构建请求脚本 delete_repo.py

from time import sleep
import requests

headers = {
    "Accept": "application/vnd.github.v3+json",
    "Authorization": "token xxx", # 此处的 xxx 代表前面申请的 token
    "X-OAuth-Scopes": "repo"
}

with open('~/repos.txt', 'r', encoding='utf-8') as f: # 此处修改为 repos.txt 的地址
    data = f.readlines()

url = "https://api.github.com/repos/{}/{}"
urls = []
for line in data:
    name, repo = line.strip().split("/")
    urls.append(url.format(name, repo))

for l in urls:
    requests.delete(url=l, headers=headers)
    sleep(2)

4. 在 terminal 中执行文件

pip install requests # 可能需要安装 requests

python3 delete_repo.py