No project description provided
Project description
Access GitHub
緣由與動機
🔑關鍵:最關鍵的動機是讓全球百萬開發者,都能免費享受分散運算 20 VMs 加速能力!驅動 Github Actions。 💣地雷:直接去用 gpt-4 開發 github api 會撞牆,寫出一堆與最新文件不相容的程式碼,因此要避開此地雷。
而在日常的軟體開發過程中,我們經常需要和 GitHub 進行交互。例如,從不同的存儲庫中讀取文件,更新文件,創建和刪除文件等。雖然我們可以通過 GitHub 網站界面完成這些操作,但在某些情況下,使用命令行或 Python 腳本來進行這些操作會更加方便。 為了解決這些問題,本專案設計了一個簡單可用的 Python 庫和對應的命令行工具,以幫助開發者在不離開終端或編程環境的情況下與 GitHub 進行交互。這將大大提高我們的工作效率,使得開發過程更加流暢。
安裝方法
通過以下命令安裝 access-github
:
python3 -m pip install access-github
命令行工具用法
使用 python3 -m access_github
可以使用命令行工具,下面是具體用法:
python3 -m access_github [operation] --token TOKEN --url URL [other_arguments]
可用操作
get_tree
: 獲取指定存儲庫的代碼樹read_file
: 讀取指定路徑的文件內容update_file
: 更新指定路徑的文件內容create
: 創建指定路徑的文件或文件夾delete
: 刪除指定路徑的文件或文件夾create_or_update_github_action
: 創建或更新 GitHub Actions 工作流配置文件dispatch_github_action
: 觸發指定的 GitHub Actions 工作流
用法範例:
以下是一些常見的用法示例:
-
獲取存儲庫的代碼樹:
python3 -m access_github get_tree --token TOKEN --url REPO_URL
-
讀取指定路徑的文件內容:
python3 -m access_github read_file --token TOKEN --url REPO_URL --path FILE_PATH
-
更新指定路徑的文件內容:
python3 -m access_github update_file --token TOKEN --url REPO_URL --path FILE_PATH --content NEW_CONTENT --name YOUR_NAME --email YOUR_EMAIL
-
創建文件:
python3 -m access_github create --token TOKEN --url REPO_URL --path FILE_PATH_OR_FOLDER --content FILE_CONTENT --name YOUR_NAME --email YOUR_EMAIL
-
刪除文件:
python3 -m access_github delete --token TOKEN --url REPO_URL --path FILE_PATH
-
創建 GitHub Actions 工作流:
python3 -m access_github create_or_update_github_action --token TOKEN --url REPO_URL --path WORKFLOW_YML_FILE_PATH --content WORKFLOW_YML_CONTENT
-
觸發 GitHub Actions 工作流:
python3 -m access_github dispatch_github_action --token TOKEN --url REPO_URL --workflow_yml_filename WORKFLOW_YML_FILENAME --event_type EVENT_TYPE --client_payload CLIENT_PAYLOAD
Python 庫用法
可以通過 from access_github import FUNCTION_NAME
來導入需要使用的功能,如:
from access_github import get_tree, read_file, update_file, create, delete, create_or_update_github_action, dispatch_github_action
函數參考
get_tree(token: str, url: str) -> dict
: 獲取指定存儲庫的代碼樹read_file(token: str, url: str, path: str) -> dict
: 讀取指定路徑的文件內容update_file(token: str, name: str, email: str, url: str, path: str, content: str) -> dict
: 更新指定路徑的文件內容create(token: str, name: str, email: str, url: str, path: str, content: str) -> dict
: 創建指定路徑的文件delete(token: str, url: str, path: str) -> dict
: 刪除指定路徑的文件create_or_update_github_action(token: str, url: str, path: str, content: str) -> dict
: 創建或更新 GitHub Actions 工作流配置文件dispatch_github_action(token: str, url: str, workflow_yml_filename: str, event_type: str, client_payload: str) -> str
: 觸發指定的 GitHub Actions 工作流
函數使用範例
以下是使用 Python 庫操作的示例:
from access_github import get_tree, read_file, update_file, create, delete
token = 'your_token'
url = 'https://github.com/user/repo.git'
path = 'path/to/file.txt'
# 獲取代碼樹
tree = get_tree(token, url)
# 讀取文件
content = read_file(token, url, path)
# 更新文件
update_result = update_file(token, 'your_name', 'your_email', url, path, 'new_content')
# 創建文件
create_result = create(token, 'your_name', 'your_email', url, 'path/to/new/file', 'file_content')
# 刪除文件
delete_result = delete(token, url, 'path/to/file')
請根據您的需求選擇合適的函數進行操作。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file access-github-1.1.0.tar.gz
.
File metadata
- Download URL: access-github-1.1.0.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5833999d052e5b4225edc0fd88481b8d331c3e432b341927651fae917ce0564e |
|
MD5 | 59a5f00ccab978d16a4052af2ee4ea03 |
|
BLAKE2b-256 | 5486bd4e98085b1fbdcb37a6815b46fc7503c435c518ed580b254d5aec0b578c |
File details
Details for the file access_github-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: access_github-1.1.0-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8acca34a6eb0f28cf5aed843cd5b61d5d31bed6581e822862cc73a3c9ddb656 |
|
MD5 | 21a60a851df60e9d2ed08d5a4b9ec884 |
|
BLAKE2b-256 | c575a7b94b2850f22a12382418f4b1b27892d8f12516a113570b324e476e8b5e |