
前回は、コマンド1行でビルド出来る BuildScript を作りました。でも、そのコマンドを打つのが自分のパソコンのままでは、まだ自動とは言えません。そこで今回は、プロジェクトを GitHub に置いて、ブラウザのボタンを押すと GitHub Actions が動くところまで作ります。まだビルドはしませんが、「ボタン1つで、GitHub のサーバーが手順を動かしてくれる」という自動化の入口を、はじめて動かしてみたいと思います!
privateリポジトリを作ろう

GitHub のアカウントと Git の準備がまだのときは、UnityのプロジェクトをGithubで管理withSourceTree【準備編】を見てください。
- GitHub の右上の「+」>New repository を開く
- Repository name:unity-release(好きな名前でOK)
- 公開の範囲は Private(自分だけが見られる)
- README・.gitignore・license は付けない(空のリポジトリにする。中身は手元から上げる)
private のリポジトリでも、GitHub Actions は無料のプランで月2,000分まで使えます(2026年10月時点)。
上げるもの・上げないもの

上げる前に、プロジェクトのフォルダの直下に .gitignore を置きます。ここに書いたフォルダやファイルは、GitHub に上げられません。GitHub が用意している Unity 用の .gitignore をそのまま使えばOKです。主な行はこのようになっています。
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Uu]ser[Ss]ettings/
*.csproj
*.sln
/[Bb]uild/:前回の BuildScript が .exe を出す Build フォルダ。ビルドしたものは上げない(ビルドはサーバーで毎回作り直す)/[Ll]ibrary/:Unity が作る一時的なデータ。いちばん大きいフォルダで、無くても Unity が作り直す
GitHub には、1つのファイルが100MBを超えると上げられない決まりがあります(50MBを超えると注意が出ます)。星ふる夜の庭でいちばん大きいのはフォントの約5MBなので大丈夫でしたが、大きな動画や音のファイルがあるゲームは、上げる前に確かめておきましょう。
はじめての push
PowerShell で、プロジェクトのフォルダに移動して、次のように打ちます。ユーザー名 は自分の GitHub のアカウント名に変えてください。
cd D:\repositories\blog-anogame\projects\unity-release
git init -b main
git add .
git commit -m "星ふる夜の庭"
git remote add origin https://github.com/ユーザー名/unity-release.git
git push -u origin main
git init -b main:このフォルダを Git で管理する(ブランチの名前は main)git add .とgit commit:.gitignore に書いたもの以外を、まとめて記録するgit remote add origin …:上げる先に、さっき作ったリポジトリを登録するgit push -u origin main:GitHub に上げる(初めてのときは、ブラウザで GitHub へのログインを求められます)

リポジトリのページを開いて、Assets や release.json が並んでいて、Library や Build が無ければOKです。
はじめてのGitHub Actions
GitHub Actions は、決めたきっかけで、GitHub のサーバーが手順を動かしてくれる仕組みです。手順は ワークフロー というファイルに書いて、.github/workflows フォルダに置きます。
unity-release/
├─ .github/
│ └─ workflows/
│ └─ hello.yml ← ここ
├─ Assets/
└─ release.json
hello.yml の中身はこうです。
name: hello
# いつ動くか
on:
# Actions の画面の「Run workflow」のボタンで動かす(「Use workflow from」で選んだブランチかタグで動く)
workflow_dispatch:
jobs:
hello:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: リポジトリを取ってくる
uses: actions/checkout@v5
- name: どこで動いたかを表示する
run: echo "${{ github.ref_name }} で動きました(きっかけ:${{ github.event_name }})"
- name: release.json を読む
run: cat release.json
- name: Secrets を使ってみる
env:
AIKOTOBA: ${{ secrets.HELLO_SECRET }}
run: echo "合言葉は $AIKOTOBA"
on:動くきっかけworkflow_dispatch:Actions の画面にある Run workflow のボタンで動く- ふだんのコミットの push では動かない
runs-on: ubuntu-latest:動かすサーバー(Linux)permissions: contents: read:リポジトリを読むだけの許可。このワークフローは、リポジトリに何も書き込まないsteps:上から順に動く手順actions/checkout@v5:リポジトリの中身を、サーバーに取ってくる。@v5のように版を決めておくと、勝手に中身が変わらないrun:コマンドを動かす。${{ github.ref_name }}には、ボタンを押すときに選んだブランチの名前(main)が入る- 「Secrets を使ってみる」は、次の節で入れる Secrets を使う
ファイルを作ったら、コミットして push しておきます。
git add .github/workflows/hello.yml
git commit -m "hello のワークフロー"
git push
push しただけでは、ワークフローは動きません。Actions のタブに hello が出ていればOKです。いつ動くかは、自分がボタンを押したときです。
スライムコミットを push するたびにビルドが走ったら、ちょっと怖いなって思ってました・・・



on に書いたきっかけでしか動かないから大丈夫! AIに書いてもらっても、on の行だけは必ず読んでおこうね
Secretsの入れ方


このあとの回では、UBA の API キーや、ストアに上げるための鍵を使います。こういった人に見られてはいけない値は、リポジトリのファイルに書かず、Secrets に入れます。
- リポジトリの Settings>Secrets and variables>Actions を開く
- New repository secret を押す
- Name:HELLO_SECRET(英数字と _ で付ける。大文字にしておくと見分けやすい)
- Secret:好きな言葉(ここでは練習なので、合言葉)
- Add secret で保存する
ワークフローの中では ${{ secrets.HELLO_SECRET }} で使えます。hello.yml では、それを env で AIKOTOBA に入れて、echo で表示しようとしています。
Secrets は、保存したあとは自分でも中身を見られません(上書きは出来ます)。元の値は、なくさないように自分で控えておきましょう。また、release.json やスクリプトには鍵やパスワードを絶対に書かないでください。private のリポジトリでも、あとで人を招待したり、公開に切り替えたりすると見えてしまいます。
ボタンで動かしてみよう!


- リポジトリの上の Actions のタブを開く
- 左の一覧で hello を選ぶ
- 右の Run workflow を押す
- Use workflow from:main のまま
- 緑の Run workflow を押す
入れるものは、どのブランチで動かすかだけです。選んだブランチの、いま GitHub にある最新の中身で動きます。何回押しても、同じように動きます。
Actionsの画面で結果を見る


少し待つと、一覧に実行が出ます。緑のチェックが付いていれば成功です(失敗すると赤い×になります)。ボタンで動かした実行には、Manually run と出ます。




行をクリックして、hello のジョブを開くと、手順ごとのログが見られます。手順の行の左の > を押すと、その手順のログが開きます。実行のページに「ubuntu-latest が Ubuntu 26 に移る」というお知らせ(Annotations)が出ることがありますが、今回の手順には関係ないので、気にしなくてOKです。


自分のときは、ジョブそのものは7秒で終わりました。
- 「どこで動いたかを表示する」に、選んだブランチ(main)と、きっかけ(workflow_dispatch=ボタン)が出る
- 「release.json を読む」で、GitHub に上げた release.json が読めている(サーバーにも、手元と同じプロジェクトが届いている)
- 「Secrets を使ってみる」の合言葉は
***になっている
ログを見ると、合言葉のところが *** になっています。Secrets に入れた値は、ログに出そうとしても GitHub が自動で伏せてくれます。



合言葉が *** になってる!自分で入れたのに読めないの、ちょっとさみしいですね・・・
今回の自動化チェック
– GitHub に private のリポジトリがあって、Library と Build が上がっていない
– Actions の hello で Run workflow を押す(main)と、緑になる
– ログに、ブランチの名前と release.json の中身が出て、Secrets は *** になっている
– もう一度押しても、同じように緑になる
– ふだんのコミットの push では動かない
次回は
次回は、Unity Build Automation を設定して、Unity のクラウドで星ふる夜の庭をビルドしてみます。何分かかったかも測って、お金の話の準備をしたいと思います!
コメント
コメント一覧 (1件)
[…] 前回:AIを使ったのに俺のゲームがリリースできないわけがない#4|GitHubに置こう… […]