GitHub連携

connect for Pleasanter機能

connect for PleasanterでGitHub連携について説明します。

GitHub連携の準備

  • GitHub(ギットハブ)は、エンジニアの世界では「これがないと仕事にならない」と言われるほど、世界標準のソフトウェア開発プラットフォームです。
  • 2026年現在、GitHubは単なる「コード置き場」を超え、「AIがコードを書き、人間がそれをレビューする」という、AIネイティブな開発環境の中心的役割を担っています。
GitHub Japan
GitHubはソフトウェア開発のプラットフォームです。GitHubには8000万件以上ものプロジェクトがホスティングされており、2700万人以上のユーザーがプロジェクトを探したり、フォークしたり、コントリビュートしたりしています。
  • GitHub REST APIは、GitHubのリポジトリ、プルリクエスト、ユーザー情報などのリソースにプログラムからアクセスするためのインターフェースです。。
GitHub REST API に関するドキュメント - GitHub ドキュメント
GitHub の REST API でインテグレーションを作成し、データを取り出して、ワークフローを自動化する。
  • 今回ご紹介するのはGitHubのPleasanter/issuesデータを取得するサイトです。
Implem/Implem.Pleasanter
Pleasanter is a no-code/low-code development platform that runs on .NET. You can quickly create business applications wi...
  • GitHubのPleasanter/issuesデータを取得するAPIの仕様は以下サイトを参照ください。
問題用の REST API エンドポイント - GitHub ドキュメント
REST API を使って、issue と pull request を管理します。

GitHubを活用した利用シーン

開発資産の「棚卸し・ガバナンス」の一元化

  • シーン: 組織内の全リポジトリ一覧、最終更新日、閲覧権限、公開設定をPleasanterに同期し、定期的な監査台帳として運用。
  • メリット: 放置されたリポジトリや、不適切な公開設定をPleasanterのビューで一括検知。セキュリティガバナンスを自動化。

複数プロジェクトを横断した「統合ダッシュボード」

  • シーン: 各リポジトリのIssue消化率、未処理のプルリクエスト、直近のリリース状況をPleasanterのグラフ機能で集約表示。
  • メリット: 複数の開発チームを抱えるマネージャーが、GitHubを一つずつ開くことなく、組織全体の「健康状態」を一目で把握。

コミット履歴に基づく「正確な工数・原価管理」

  • シーン: コミットログのメッセージやタイムスタンプをPleasanterの工数テーブルに反映。どの案件にどれだけのエンジニアコストを投入したかを自動集計。
  • メリット: 自己申告ベースの曖昧な日報を廃止し、ソースコードの変更に裏打ちされた正確な原価計算を実現。

証跡管理を徹底する「変更管理(IT全般統制)」

  • シーン: 「誰がいつどのコードをマージしたか(PR/Commit)」と「どのIssueに基づいた変更か」をPleasanter上で紐付け、承認記録と共に保存。
  • メリット: 上場企業の監査やISMS審査において、開発からリリースまでのプロセスに不正がないことを証明する強力なエビデンス(証跡)になる。

リリース情報と顧客サポートの「ナレッジ完全同期」

  • シーン: GitHubの「Release」や「Tag」の情報をPleasanterの製品マスタに同期。どのバージョンでどの修正(Issue)が含まれたかを一覧化。
  • メリット: サポート担当者が「お客様が使っているバージョンで、あのバグは直っているか?」を即座に回答可能に。

開発者の「スキル・貢献度可視化」

  • シーン: コミット数、レビュー数(PRのコメント)、クローズしたIssueの難易度などをPleasanterで集計・スコアリング。
  • メリット: 評価面談の際、客観的な数値データに基づいた公平なフィードバックが可能になり、エンジニアのモチベーション向上。

脆弱性対応(Dependabot)のタスク化と期限管理

  • シーン: GitHubで検知されたセキュリティ警告(Alerts)をPleasanterの「重要課題」として自動起票し、担当者と完了期限を割り当て。
  • メリット: 開発画面の奥に埋もれがちなセキュリティリスクを、組織全体の「未処理タスク」として表面化し、対応漏れを防ぐ。

コードレビューの停滞防止(SLA監視)

  • シーン: プルリクエスト(PR)作成から一定時間経過してもレビュー・マージされないものをPleasanter側で「遅延フラグ」を立てて通知。
  • メリット: 開発のボトルネックをリアルタイムで検知。特定の開発者にレビュー負荷が集中している状況を可視化。

外部委託先との「セキュアな進捗共有」

  • シーン: 内部リポジトリの全データをPleasanterに同期し、協力会社には「Pleasanterの閲覧権限」のみを付与して進捗を報告。
  • メリット: ソースコード(知的財産)への直接アクセスを最小限に抑えつつ、詳細な作業進捗や課題状況を透明性高く共有。

インフラ(IaC)変更と資産台帳の自動更新

  • シーン: Terraformなどのインフラ定義(Commit)が変更された際、Pleasanter上の「サーバー構成台帳」のステータスを自動更新。
  • メリット: 「台帳が最新でない」という管理部門によくある悩みを解消。物理構成と管理データの一致を自動維持。

GitHub REST APIの特徴

項目特徴
リソース指向HTTPメソッド(GET, POST, PATCH, DELETEなど)を使用して、URL形式で指定されたリソースを操作します。
JSON形式リクエストとレスポンスのデータ形式は基本的にJSONです。
バージョニングリクエストヘッダーに X-GitHub-Api-Version を指定することで、特定のAPIバージョンを利用できます。

GitHub REST APIの認証方法とレート制限(回数制限)

  • 今回ご紹介するのはPAT (personal access token)を使った例となります。
  • PATの作成方法はこちらを参照ください。
認証タイプレート制限(1時間あたり)主な用途
未認証 (Public)60回公開情報の取得(テスト用)
PAT (個人用トークン)5,000回個人スクリプト、CI/CD
GitHub App5,000〜15,000回組織向けアプリ、ツール開発
GitHub Actions1,000回(標準)ワークフロー内での自動化

GitHub連携サンプル

connect for Pleasanterで、GitHubのPleasanterのissuesデータを取得し、社内に導入してるPleasanterアプリに問題があったときに参考となる情報がないか確認します。

  • CFPサービス管理サイトの設定
    • X-GitHub-Api-Version:APIバージョン、最新は2026-03-10
    • state:ステータス、allでopen/close両方取得
    • per_page:取得する件数、デフォルト30、タイムアウト発生時に調整が必要
    • sort・direction:updated(更新日)を昇順でデータを取得することでデータ漏れを防止
項目設定例
サービス名GitHub
認証タイプBearerToken
baseURLhttps://api.github.com
リクエスト情報{
 ”auth”: {
  ”token”: “トークン”
 },
 ”headers”: {
  ”Accept”: “application/vnd.github+json”,
  ”X-GitHub-Api-Version”: “2022-11-28”
 },
 ”defaultParams”: {
  ”state”: “all”,
  ”per_page”: “100”,
  ”sort”: “updated”,
  ”direction”: “asc”
 }
}
  • CFPマッピング管理サイトの設定
    • 最大取得ページ:per_page×最大取得ページ、タイムアウト発生時に調整が必要
    • 更新処理件数:Pleasanterへの更新処理件数、タイムアウト発生時に調整が必要
項目設定例
マッピング名GitHub.Implem.Pleasanter.issues
取得対象リソースrepos/Implem/Implem.Pleasanter/issues
最大取得ページ3
PleasanterサイトID12345
マッピング情報{
 ”title”: “Title”,
 ”id”: “NumA”,
 ”number”: “NumB”,
 ”state”: “ClassA”,
 ”user.login”: “ClassB”,
 ”assignee.login”: “ClassC”,
 ”created_at”: “DateA”,
 ”updated_at”: “DateB”,
 ”closed_at”: “DateC”,
 ”html_url”: “ClassD”,
 ”body”: “DescriptionA”
}
プライマリーキー[
 ”NumA”
]
更新処理件数100

GitHub連携結果

  • プリザンターissuesサイトの一覧画面>最新データ同期>画面リロード

お問い合わせ

「connect for Pleasanter」のデモや製品に関するお問合せはお気軽にご相談ください。

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