Fork先のリポジトリでGitHubActionsのワークフローを有効化する方法 - KatLab-MiyazakiUniv/etrobocon2020 GitHub Wiki
以下の方法が正しい方法かどうかは知りません...
etrobocon2020 を Fork
した後、Fork 先のリポジトリを Clone
します。
$ git clone https://github.com/[自分のGitHubユーザ名]/etrobocon2020.git
上記のURLの[自分のGitHubユーザ名]
がきちんと自分のユーザ名になっていれば大丈夫です。
通常、Fork先のリポジトリでは GitHub Actions が無効となっているので、有効化する必要があります。
【画像】詳しい手順を見るにはここをクリック!!!
Fork 先のリポジトリの場合、.github/workflows
ディレクトリにワークフローファイルが存在しても通常は動作しないようです。
しかし、当該リポジトリの所有者が作成又は変更を加え、Commit
そしてPush
したワークフローファイルは、それ以降動作するようです。
また、一度動作したワークフローファイルは、そのワークフローファイルに変更を加えたCommit
の内容をワーキングツリーから削除し再度Push
しても動作し続けるようです。
この仕様(?)のおかげで、Commit 履歴を汚さずに Fork 先のリポジトリでも GitHub Actions を動作させることができます。
以下に、実際の手順を示します。
Windows10(WSLを使用) の場合は、以下のコマンドで移動できると思います。
$ cd ~/etrobo/workspace/etrobocon2020 # 移動
ステージング (git add
) したファイルが何もないことを確認します。
以下のように表示されていればとりあえず大丈夫です。
$ git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
以下の例では、ワークフローファイルの末尾に改行を加えています。
[ブランチ名]
の部分は、現在のブランチ名に置き換えてください。
$ echo "" >> .github/workflows/google-test.yaml # ワークフローファイルの末尾に改行を追加
$ git add .github/workflows/google-test.yaml # ワークフローファイルをステージング
$ git commit -m "tmp: 適当なCommitメッセージ" # Commit
$ git push origin [ブランチ名] # Push
先ほどのファイルの変更はただ単に改行を追加しただけで、意味のないものです。
このような履歴を残しても邪魔なだけなので、Commit(変更)を取り消して Push します。
git reset --hard HEAD^ # 直前の Commit を無かったことにする
git push origin master -f # 無理やり Push する
以上で完了です。 以降は、Push 時に GitHub Actions が走ってくれるはずです...
以下の画像のようになっていたら正常に動作していると考えられます。