GitHub上で変更要求があるPull Requestをフィルタリングする方法


  1. REST APIを使用する方法: GitHubのREST APIを使用すると、PRの状態や変更要求の情報を取得できます。以下は、Pythonを使用した例です。
import requests
def filter_prs_with_changes(owner, repo):
    url = f'https://api.github.com/repos/{owner}/{repo}/pulls'
    response = requests.get(url)
    prs = response.json()
    filtered_prs = []
    for pr in prs:
        if pr['state'] == 'open' and pr['requested_changes'] > 0:
            filtered_prs.append(pr)
    return filtered_prs
# 使用例
owner = 'ユーザー名'
repo = 'リポジトリ名'
filtered_prs = filter_prs_with_changes(owner, repo)
print(filtered_prs)
  1. GitHub CLIを使用する方法: GitHub CLIを使用すると、コマンドラインからGitHubにアクセスできます。以下は、GitHub CLIを使用した例です。
$ gh pr list -s open -R owner/repo --json state,title,reviewChangesRequested

このコマンドは、指定したリポジトリのオープン状態のPRの一覧を表示し、変更要求の数とタイトルを含むJSON形式の出力を返します。

  1. GitHubのウェブインターフェースを使用する方法: GitHubのウェブインターフェースを使用して、PRの一覧を表示し、フィルタリングすることも可能です。以下の手順で操作します。
  • ブラウザでGitHubにアクセスし、対象のリポジトリに移動します。
  • "Pull requests"タブをクリックしてPRの一覧を表示します。
  • フィルタリングオプションを使用して、変更要求のあるPRのみを表示します。

以上の方法を使用することで、GitHub上で変更要求があるPRを効果的にフィルタリングすることができます。それぞれの方法を試して、自分に合ったものを選択してください。