bokunonikki.net
JP / EN

画像管理はGit LFSよりCodeCommitを選択した方がいいよ

Sat Jul 17, 2021
Sat Jul 17, 2021

このブログの管理はGitHubでしており、マークダウンはもとより、画像もすべてgitで管理しています。しかし、画像などのバイナリファイルをgitで管理していると問題になるのが容量です。

GitHubも理想は1GB未満を推奨しています。

リポジトリは小さく保ち、理想としては 1GB 未満、および 5GB 未満にすることを強くお勧めします。 リポジトリが小さいほど、クローン作成が速く、操作やメンテナンスが簡単になります。 リポジトリ内の個々のファイルは、100 MB の最大サイズ制限に厳密に制限されています。 詳細は「大きなファイルを使って作業する」を参照してください。

私のディスク容量はいくつですか?

なのでバイナリファイル多く使うブログ系のメディアやコンテンツサイトの運用を考えると画像などはS3などのストレージサービスを活用し、Gitはリンクのみを参照するという方式が理想でしょう。

しかし、それだと結構面倒ですよね。画像もまとめて管理したいんじゃー。そうなるとGit LFSなどを採用する必要がありました。しかし、これもこれで面倒そうです。

もっと簡単に管理する方法はないのか、と調べた結果、候補に上がったのがawsCodeCommitです。

なんといっても高可用性と耐久性の点では非常に優れています。

AWS CodeCommit は、お客様のリポジトリを Amazon S3 と Amazon DynamoDB に保存します。 暗号化されたデータは、複数の施設にわたって、冗長性を確保して保存されます。このアーキテクチャによって、リポジトリデータの可用性と耐久性が高められています。

AWS CodeCommit の特徴

CodeCommit自体も

CodeCommit を使用して、コードからバイナリまで何でも保存できます。

AWS CodeCommit

と言っているだけあって、本当なんでもコミットできます。仕組み的にはS3も使ってるみたいなので、バイナリデータ系はS3を使っていろいろうまいことやってくれているのでしょう(知らんけど)。

CodeCommitはGitHubと違いIssue管理などができないのがデメリットですけど、バイナリデータをまとめて管理できるというのはかなりいいのではないでしょうか。

バイナリデータの扱いに困っている人はぜひCodeCommitも候補にあげてみてはいかがでしょうか。

See Also