SwaggerHubで更新するたびにGitHubにコミットさせる方法


目的

Swaggerを更新したら、コミットされてGitHubに反映され、GitHubに草が生えたら最高ですよね。
それを実現しようと思ったら、意外と日本語の記事が出てこなかったので書きました。

方法

GitHub Syncを使いましょう。
基本は以下のチュートリアルビデオに沿って操作すれば実現できました。
GitHub Sync チュートリアル
しかし、上記のチュートリアルビデオは少し古く、最新バージョンのOpenAPI3.0では少し異なるところがありました。
それは、Basic SyncAdvanced Syncを選べるところです。

Basic SyncとAdvanced Syncの違い

Basic Syncを選ぶと、SWAGGERHUBというブランチが作成され、そちらにコミットされてしまいます。
しかし、masterブランチでないとGitHubに草が生えないため、これでは困ります。正直Swaggerは何個もブランチ作って管理する程のものでもないので、直接masterブランチにコミットしてもらいたいと思いました。
Advanced Syncを選ぶと、ブランチ名、Output Folder、SwaggerHubが管理もしくは無視するファイルやフォルダーの選択が可能になります。
ですので、今回はAdvanced Syncでmasterブランチを選択しようと思います。

Advanced Syncの設定

Branchのところをmasterに、
Fully Managed Pathsのところを*と設定すれば、無事GitHubのmasterブランチにコミットされて草が生えました!
ちなみに、Fully Managed Pathsは指定したファイルやフォルダーがGitHub上になければ作成され、あれば変更分が上書きされるというものです。要するにバージョン管理の対象になるってことですね。*をつければ全てが対象になります。