search
LoginSignup
25

posted at

updated at

Github Gist を1個のレポジトリでまとめて管理する ( git submodule を利用 )

Gistはお手軽にコードが書けて、なおかつレポジトリ管理も出来てなかなか便利だ。

だが欠点もある。

  • レポジトリがバラバラになってしまう
  • URLに自動的にハッシュが割り振られるので、名前を思い出しにくい

そこで通常のGithubレポジトリでまとめてGistを管理してみる。

Githubに集約用レポジトリを作成

例:

Gistを作成する

Webから作成。

image.png

割り振られたURLの例:

集約用レポジトリに submoduleとして追加する

コマンド:

git submodule add [GistのURL] [好きなディレクトリ名]

例:

git submodule add https://gist.github.com/YumaInaura/8d52e73dac7dc361745bf568c3c4ba37 understandhing_channel_buffer

ここでディレクトリに好きな名前を付けておくと、思い出しやすいと思う。

( 手元からpushも出来るようにする場合はこちらを参照 — Github Gist に手元から push する - Qiita )

集約用レポジトリにpushする

これでsubmoduleで管理された状態が、本体のレポジトリに反映される。

Githubでの見え方

集約用レポジトリからGistへのリンクが貼られているのが分かる

image.png

リンク先はGistだ

image.png

ページ例:

集約用のレポジトリをcloneする

--recurse-submodules オプションを付けると、submodule分まで全て手元に持ってきてくれる。

例:

git clone --recurse-submodules https://github.com/YumaInaura/gist

submoduleの数が多くなるとすごいclone数が発生しそうだが、それはそれでまた困った時に考える。

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

Twitter

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
25