Gitレポジトリ内の一部のディレクトリを別のリモートレポジトリでも管理したい!

やりたいこと

そこそこ大きめなソースコードでGit管理しているのですが,そのうちの一部を共有してほしいとの依頼があったため,なんとかしたいということです.
ディレクトリ構造を書くとこんな感じ

  • hoge
    • fuga
      • file
    • piyo
      • file

このうち,hugaをプライベートレポジトリで管理しているのですが,fugaの部分のみを共有してほしいとのことでした.

一部のディレクトリのみを別のリモートレポジトリで管理

そこで,fugaだけを別のリモートリポジトリで共有したいと思います.
まず,fugaを管理するために新しくfugaの中でgit init します.

fuga$git init

これで,fugaのみを管理するgitを作成することができました.
さらに,fugaのリモートに共有先のレポジトリを登録します.

fuga$git remote share <url>

あとはいつもどおりadd, commit, pushする

fuga$git add .
fuga$git commit -m "inital commit"
fuga$git push share master

これで,fugaディレクトリだけを別のリモートレポジトリで管理することができました!

まとめ

これで,普段の開発はhoge全体で続け,fugaディレクトリだけ別で共有することができるようになりました.
こういった使い方にどれだけ需要があるかわかりませんが,個人的にやりたいことができたので,良しとします.