2020年4月13日月曜日

[Git] submodule を非 submodule なリポジトリとしてコピペする

リモートワークされてる方が多いと思いますが、
ネットワーク絡みで困ることも多いのではないでしょうか。
めちゃくちゃでかいリポジトリの clone が全然終わらなくて・・ということが筆者もあります。
先日もとあるリポジトリを clone しようとして困ったことに。

そんなときは、clone じゃなく、既に clone 済みのワークスペースを cp して使うことがあります。
ただ、今回は submodule だったので諦めようと思ったのですが・・

submodule は .git フォルダは .git ファイルがある。

親の .git/modules には .git フォルダらしきものがある。


これはイケるのでは?と思ったので試してみた。
(※画像は個人開発のリポジトリです)

やってみた

まずは、submodule のディレクトリをコピー。.git ファイルは消す。
続いて、.git/modules から submodule 名のディレクトリを .git としてコピー。
コピーした .git ディレクトリ内の config ファイルを開くと worktree の設定があるので消す。


結果

これでうまくいきました。
まぁ、これを使うことってそうそうない気もしますが備忘録として。

今回は以上。
ではでは。


0 件のコメント:

コメントを投稿