2017年1月8日日曜日

GitHubにバイナリファイルをuploadする

今回はGitHub関連ツールの紹介です。

GitHubに公開したファイルとは別に、データファイルだけを置いて、それをwgetを使って別途利用して欲しい場合があります。例えば、chromebrewで使うコンパイル済みバイナリファイルなど。

昔のGitHubだとそういうファイルをpostして、git cloneするファイルとは別に管理できたみたいですが、今は出来ません。

今は代わりにreleaseページを作ってそこにバイナリを置けるのですが、イマイチ使いづらいのです。毎回web UIからファイルをD&Dしないといけなかったり。

なのでこれまで使ってなくて、代わりにgit lfsを使おうと調べてみたらこちらもイマイチ、バグがあったり遅かったり、更にはdevelopperは必ず全てのデータを取得しないといけないなど、使いづらそうです。

なので今度は方向性を変えて、releaseページにCLIからファイルを追加する方法を探してみました。そしたら良いのがあったので紹介です。

https://github.com/aktau/github-release

ただオプションがいっぱい必要だったりイマイチ使いづらいなと。なのでwrapperを作ってみました。

https://github.com/jam7/simple-github-release

できることは最小限に絞って、他のプロジェクトにコピーして置いて使いやすいよう工夫しています。コピーして使う時は、先頭の'owner'と'repo'をハードコーディングしてしまうといいですね。

これを使うと、
$ ./upload-github-release.sh v1.0 tarfiles/*.tar.xz
とするだけで、v1.0のリリースページにtarfilesディレクトリ配下のファイルが全てコピーされます。困ってる人は是非使ってみてください。

0 件のコメント:

コメントを投稿