この記事のポイント
- テンプレートリポジトリの使い方について書いているYo
復習:GitHubのリポジトリを作る方法
まずはリポジトリを作成する方法について振り返ってみましょう。以前までは作り方が限定されていましたが、現在においてはさまざまな作り方があります。
-
https://github.com/newから作成する - GitHub CLIの
gh repo createを使って作成する- 既存のリポジトリをリモートリポジトリをプッシュして作成する
- GitHub REST APIを使って作成する
- octokitを使って作成する
- GitHub DesktopなどのGUIベースのアプリを使って作成する
https://github.com/newから作成する
ブラウザでGitHubにログインしてリポジトリを作成する方法です。もっともベーシックで簡単な方法です。
デメリットとしてはブラウザが必須というところです。便利がゆえに使い方に差が出てしまうため、組織でGitHubを使う場合においては今回のテーマとなっているテンプレートリポジトリを使うなど工夫が必要です。
また、まとめてたくさん作成するといった場合においてはClickOpsが発生してしまいます。
GitHub CLIのgh repo createを使って作成する
GitHub CLIを使ってリポジトリを作成する方法です。
GitHub CLI - Take GitHub to the command line
オプションを指定してたくさん作成することもできるのでターミナル操作に慣れている人におすすめです。
リポジトリの作成、クローン、コミット、プッシュといった作業がCLIで完結するといった点もGoodです。
CLIで完結するというとターミナルがGitHubで認証されている場合は既存のリポジトリをリモートリポジトリにプッシュすることでGitHubに新しいリポジトリを作成できます。
GitHub REST APIを使って作成する
APIを使ってリポジトリを作成する方法です。
APIとしてはcreate-an-organization-repositoryが利用できます。
octokitを使った方法もあるでしょう。(以下、.NETの場合)
octokit/octokit.net: A GitHub API client library for .NET
どちらにしてもアプリケーション開発者向けの方法です。
GitHub DesktopなどのGUIベースのアプリを使って作成する
GitHubと接続できるGitHub Desktopを使ってリポジトリを作成する方法です。
GitHub Desktopのインストール方法 - GitHub
GitHubの操作に慣れていない人に向いている方法だと思われがちですが、Visual Studio CodeともシームレスにつながっているのでVisual Studio Codeを利用している人も必見です。
また、動作も軽快なのでブラウザ操作で遅いと感じている人は試してみると良いでしょう。
リポジトリの作り方はあれど
作り方をいくつか振り返ったところで、いずれにしてもいろんな人が個性溢れるリポジトリを作成してしまうと統制が取れなくなってしまうことやアレないやコレないが起きてしまうので一貫性のあるリポジトリの作り方が重要になります。
テンプレートリポジトリを使おう
そこで今回はテンプレートリポジトリを紹介します。
テンプレートリポジトリとは簡単に説明するとリポジトリ作成時にあらかじめ用意されたファイルセットを利用できる機能です。公式ドキュメントでは以下のように説明されています。
既存のリポジトリをテンプレート化して、あなたや他の人が、同じディレクトリ構造、ブランチ、ファイルを持つ新しいリポジトリ作成できるようにすることができます。
引用:テンプレートリポジトリを作成する - GitHub ドキュメント
実際に使ってみよう
まずは完成したテンプレートリポジトリをお見せします。
テンプレートリポジトリはリポジトリのsettingsから設定できます。
有効化するとGitHub リポジトリのUse this templateからCreate a new repositoryを選択することでテンプレートを利用できます。
リンク:ymd65536/azure_template_repo
実際に使ってみて
セットアップの手順やDev Container、.github、AGENTS.mdなどリポジトリ新規作成時においておきたいファイルをすぐにセットできるので何か始めようと思ったときにすぐにスタートできるのでとても重宝します。
とくに.githubをテンプレートとしてセットできるところは標準化が役に立つところだと思いました。
また、AGENTS.mdをスタートから利用できるところはこのコーディングエージェント時代に大いに役に立つポイントです。
テンプレートリポジトリは他にもあり、template repositoryが有効になっているリポジトリを見つけたら、Use this templateで使ってみるのも良いでしょう。
通常のリポジトリとテンプレートの見分け方としては以下のとおりです。
テンプレートリポジトリの場合
通常のリポジトリの場合
まとめ
今回はリポジトリの作り方とテンプレートリポジトリ使い方についてチェックしました。
筆者はマルチクラウドで検証を進めることが多いのでクラウドごとにテンプレートリポジトリを作成しており、AWS CLI/Azure CLI/gcloud CLIのセットアップ手順をテンプレートリポジトリにまとめています。
作成したリポジトリを2ヶ月間実際に使ってみたところではとても開発がしやすくなったかなと思います。
※よく使うGitHub Codespaces/Dev Containerの設定も入れています。
個人、組織問わず、効率的な作り方だと思うので毎回同じ作業をされている人は採用してみると良いでしょう。



