時雨堂 GitHub でリポジトリを Fork する方針
時雨堂では Erlang/OTP 関連の OSS を Fork して運用しています。Fork をするにあたって最低限の方針を雑にまとめてみました。
自社製品で利用する OSS である
当たり前ですが 一応。
OSS のライセンスが明確かどうか
LICENSE ファイルがあり、ライセンスが明確になっていること。さらに OSI 準拠の OSS であることを条件に Fork しています。
Pull-Request は可能な限りだす
Pull-Request を出さずに Fork するのは可能な限り避けています。ただし、 Pull-Request を出しても採用されにくい時雨堂固有の機能の場合は Pull-Request を出さずに Fork することもあります。
Fork する理由
Fork する理由はシンプルで、Pull-Request が採用されるまでの時間がもったいないからです。
Fork の運用
まず Fork したらかならず shiguredo というブランチを切り、デフォルトブランチに設定します。こちらに変更を加えていきます。コミットログは基本的に Fork 元にあわせており、ほとんどが英語になります。
利用する際は必ずタグを打ちます。タグは時雨堂バージョニングを採用します。YYYY.RELEASE.FIX というバージョン形式です。
Erlang/OTP 系のライブラリの場合は hex.pm への登録を行う際に、app.src の pkg で shiguredo_ という prefix をつけます。
実際に運用している Fork
実際に運用しているのは 3 つのリポジトリです。すべて Pull-Request や Issue は立てていますが、まだ対応されていないものがあるため Fork をしています。
- https://github.com/shiguredo/redbug
- https://github.com/shiguredo/erlang_ls
- https://github.com/shiguredo/sync
Fork を閉じるタイミング
Pull-Request がマージされて、タグがつけられ、リリースされたタイミングで閉じます。