【入門編】GitHub APIを叩いて開発効率UP!自動化ツールを自作するための第一歩 – バージョン管理・CI/CD活用バイブル

「毎日、GitHubの画面を何度も往復して、同じようなポチポチ作業を繰り返していませんか?」

そう問いかけたくなるほど、多くのエンジニアが「ブラウザでの手作業」という沼にハマっています。GitHubは単なるコード置き場ではありません。APIという「裏口」を使えば、開発のルーチンワークはすべて自動化できるのです。

今日は、あなたの開発効率を爆速化させるための「GitHub APIハック」の第一歩を、余計な前置きなしで解説します。

—

1. 魔法の鍵:Personal Access Token (PAT) を発行する

GitHub APIを叩くには、あなた自身を証明する「アクセストークン」が必要です。

1. GitHub右上のアイコン > Settings > 左下の Developer settings
2. Personal access tokens > Tokens (classic) を選択(最初はclassicが最も扱いやすいです)
3. Generate new token (classic) をクリック
4. Select scopes で `repo` にチェックを入れる(これでリポジトリ操作の権限が得られます)
5. 発行された文字列(`ghp_`から始まるもの)をコピー。二度と表示されないので、必ず安全な場所に保存してください。

—

2. 世界最速の「HelloWorld」:curlでリポジトリ情報を抜く

まずは、ターミナルからGitHubに挨拶してみましょう。環境構築は不要。macOSやLinuxなら最初から入っている `curl` コマンドで十分です。

GITHUB_TOKENには先ほど発行した文字列を、GITHUB_USERにはあなたのIDを入れてください
curl -H “Authorization: token $GITHUB_TOKEN” \
https://api.github.com/user/repos

このコマンドを打つと、JSONの嵐が返ってくるはずです。これが「GitHubが持っているあなたのリポジトリデータ」の全貌です。ターミナルに直接JSONが出ると見づらいので、`jq`コマンド(`brew install jq`)を組み合わせて整形しましょう。

あなたのリポジトリ名を一覧で表示する
curl -H “Authorization: token $GITHUB_TOKEN” \
https://api.github.com/user/repos | jq ‘.[].name’

これだけで、ブラウザを開かずに自分の全リポジトリを把握できました。

—

3. 実践:Issueを一括で自動作成するスクリプト

ここからが本題です。「新しいプロジェクトを立ち上げるたびに、決まったIssue(TODOリスト)を作る」という作業を自動化してみましょう。Pythonを使えば驚くほど簡単です。

まずはライブラリをインストール:
`pip install requests`

`create_issue.py`

import requests
import json

設定(環境変数から読み込むのがベストプラクティスです)
TOKEN = “あなたのトークン”
REPO_OWNER = “your-username”
REPO_NAME = “your-repo-name”

headers = {
“Authorization”: f”token {TOKEN}”,
“Accept”: “application/vnd.github.v3+json”
}

def create_issue(title, body):
url = f”https://api.github.com/repos/{REPO_OWNER}/{REPO_NAME}/issues”
payload = {“title”: title, “body”: body}

response = requests.post(url, headers=headers, data=json.dumps(payload))

if response.status_code == 201:
print(f”成功: Issue ‘{title}’ を作成しました!”)
else:
print(f”失敗: {response.content}”)

実行
create_issue(“初期セットアップの確認”, “README.mdの更新とCIの設定を完了させる”)

—

4. 伝説のエンジニアからの「極限の知見」:ここからがスタート

このコードが動いた瞬間、あなたの開発スタイルは変わります。しかし、本当のプロはここで満足しません。以下のステップを踏むことで、さらに効率は加速します。

  • 環境変数の管理: トークンをコードに直書きするのは厳禁です。`.env`ファイルと`python-dotenv`を使い、絶対にGitにコミットしないようにしましょう。
  • GitHub CLI (gh) の活用: 実は、高度な作業の多くはGitHub公式のCLIツール `gh` で完結します。まずはAPIを叩いて仕組みを理解し、複雑なロジックが必要な時だけスクリプトを書く、という使い分けが最強です。
  • イベント駆動の自動化: GitHub Actionsと組み合わせれば、「Issueが作られたら自動でSlackに通知」「PRがマージされたら特定のドキュメントを更新」といったワークフローを自作できます。

最後に

「面倒だ」と感じた作業は、すべて自動化のチャンスです。APIを叩くことは、GitHubという巨大なプラットフォームをあなたの手足にする行為です。

まずは今日、上のスクリプトを動かして「自分だけの自動化ツール」を一つ作ってみてください。その小さな積み重ねが、数年後にあなたを「ただのエンジニア」から「システムを支配するエンジニア」へと引き上げますよ。

何か詰まったら、いつでも聞いてください。応援しています!

タイトルとURLをコピーしました