« ビルドシステムを CMake へ | メイン | プラグインの分断と整理 »
2016年08月03日
吉里吉里Z 開発:: リポジトリの分割とサブモジュール化
Tweet @jin1016をフォローリポジトリが大きくなってきているのとマルチプラットフォーム化でさらに膨らむことが予想されるので、リポジトリの分割とサブモジュール化を行いたい。
先行して他に触っている人がいない GitHub pages のドキュメントページを分割してみたがうまく行った。
まずは吉里吉里ZのAPIドキュメントを分割した。
TJS2のドキュメントも分割したい。
これらドキュメントはそれぞれのリポジトリをまとめるメインリポジトリのようなところにdocumentを作り、それ以下にサブモジュールとして配置するとスッキリする。
つまり Web ページとして見られる GitHub pages のリポジトリと開発用リポジトリの2つから参照されることになる。
現在のメインリポジトリは、core 以下のソースコードのみを配置して、軽量化したい。
普段はそこしか触らないのだからフォルダが深かったり、他にいろいろあると重い。
プラグインはそれぞれでリポジトリを分けてしまった方がスッキリする。
サブモジュールとして何を登録するかは考える必要がある。
プラグインは既に本体に機能追加されていたり、使われなくなったようなプラグインはなくしてしまっても良さそう(obsolate plugins などとして分けても良い)。
プラグインは、いくつか分断が発生している。
GitHub のリポジトリと、吉里吉里2 の Subversion リポジトリのどちらか、もしくは両方で変更が入ってしまっていたりして頭痛い状態である。
また、Android 版と共通で使えるように出来るものや Windows 固有のものあるので、plugins/win32 だけでなく、plugins/android、plugins/common 等が必要になる。
吉里吉里2 の方でメンテされているプラグインはどうする予定なのか確認しないといけない。
メインリポジトリが core のみとして、サブモジュールとして束ねるリポジトリは今より入っているものが多くなる。
plugins リポジトリはサブモジュールをネストした方が扱いやすいだろうか? 最初は1段階にして使勝手を見ていくのが良いか?
分割、サブモジュール化は以下の形を予定。
[]がサブモジュール、core が現在のメインリポジトリで、各リポジトリを参照するルートは新規に作る。
- document
- [kirikiriz](krkrz-documents)
- [tjs2]
- [plugin]
- [misc](documents)
- script
- [Krkr2Compat]
- [Sample]
- [test_scripts]
- [kag3]
- [kag3_ham]
- src
- [core]
- [bin]
- win32 - plugin
- win64 - plugin64
- ...
- external
- [baseclasses]
- [freetype]
- [jxrlib]
- [ligjpeg-turbo]
- [lpng]
- [onig]
- [zlib]
- [bin]
- plugins
- win32
- [...]
- win32
- tools
- [debugger]
- [tjs2doc]
- [core]
core の external 内はサブモジュールのネスト。
GitHub 内にリポジトリがあれば、krkrz グループ内に fork してそれをサブモジュールで参照する形へ。
リポジトリ増えるけど、これですっきりするはず。
bin の位置が変わるので、plugin の出力先の調整が必要。
投稿者 Takenori : 2016年08月03日 16:08
comments powered by Disqus