gh-repospec
YAML・JSONでGitHubリポジトリの設定を宣言的に管理Manage GitHub repository configuration declaratively with YAML or JSON
リポジトリの設定、初期ファイル、Actions、ルールセット、セキュリティ機能などを設定ファイルに記述し、計画を確認して適用する GitHub CLI 拡張機能です。既存リポジトリの設定は import で取り込めます。A GitHub CLI extension for defining repository settings, seed files, Actions, rulesets, and security features in configuration, then reviewing and applying a plan. Import an existing repository to get started.
主な機能Features
import — 既存設定を取り込むimport — capture current settings
既存リポジトリの設定を YAML または JSON として書き出し、手入力なしで管理を始められます。シークレットの値は取得せず、名前だけを記録します。Export an existing repository as YAML or JSON. Secret values are never returned; only their names are recorded.
plan — 適用内容を確認plan — review proposed changes
GitHub 上の現在値と設定ファイルを比較し、変更・未対応・ブロック項目を読み取り専用で表示します。Compare GitHub state with configuration and show updates, manual work, and blockers without writing changes.
apply — 設定を収束apply — converge repository settings
計画を再計算してから設定を適用します。省略した設定は削除せず、宣言した項目を繰り返し適用できます。Recalculate the plan before applying. Omitted settings are not deleted; declared settings can be applied repeatedly.
設定ファイルで再利用Reuse configuration as code
リポジトリ、初期ファイル、Actions、ルールセット、セキュリティ、ラベル、マイルストーンなどを YAML または JSON で管理できます。Manage repositories, seed files, Actions, rulesets, security, labels, milestones, and more in YAML or JSON.
インストール手順Installation
- GitHub CLI をインストールし、GitHub.com にサインインInstall GitHub CLI and sign in to GitHub.com
gh auth login --hostname github.com - 公開済み拡張機能をインストールInstall the published extension
gh extension install kkamegawa/gh-repospec - 使い方ページの4つの利用例から作業を開始Start with one of the four workflows in the usage guide
gh repospec --help
更新履歴Changelog
リリースごとの変更内容は GitHub Releases に掲載しています。Release notes for each version are on GitHub Releases. Releases ↗