USB驱动器上的便携式Git存储库,子模块设置
我在我的美国硬盘上创建了一个裸回购,使用USB驱动器上的便携式Git存储库,子模块设置,git,Git,我在我的美国硬盘上创建了一个裸回购,使用 git init --bare M:\usb_repo 在我的本地repo上,我添加了usb repo和一个额外的远程使用 git remote add usb M:/usb_repo 我可以从本地系统推/拉到便携式回购,我可以将便携式回购带到另一个系统,然后从便携式回购结账。我的问题是子模块。我使用的repo I使用子模块,我不确定在使用便携式repo时如何处理它们。我想,也许进入本地子模块文件夹/repo,执行与远程设备相同的添加usb的过程会起
git init --bare M:\usb_repo
在我的本地repo上,我添加了usb repo和一个额外的远程使用
git remote add usb M:/usb_repo
我可以从本地系统推/拉到便携式回购,我可以将便携式回购带到另一个系统,然后从便携式回购结账。我的问题是子模块。我使用的repo I使用子模块,我不确定在使用便携式repo时如何处理它们。我想,也许进入本地子模块文件夹/repo,执行与远程设备相同的添加usb的过程会起作用,但显然不行
有没有具体的方法可以做到这一点?如果在父存储库的
.gitmodules
文件中注册的子模块引用外部公共存储库URL,则您无需执行任何操作
如果有引用其他本地存储库,那么我将使用7
- 与主回购相同的绝对路径(
,作为裸存储库)M:\myProject1.git/
- 或相对URL(但在您的情况下,最好是外部驱动器的绝对路径)
.gitmodules
中,我说url=../otherrepo.git
。当repo位于远程时,它会从同一远程获取模块;当repo位于驱动器或其他本地路径时,它会从兄弟目录获取模块,这应该适合您。小评论:我会调用repoM:\usb\u repo.git
,以便在遇到它时更清楚地了解它的本质,我想我理解,但我对我的.gitmodules
所包含的内容有点困惑。所讨论的子模块是外部的,但在.gitmodules文件中,为每个子模块列出的url类似于url=../../name.git
这应该指向远程的外部url吗?在config
文件的modules和module name下的root.git
文件夹中,它确实列出了远程源url,这是我期望外部repo的url。位于usb上的便携式git repo将用于帮助断开连接的系统。@n1th6子模块的URL可以引用远程或本地存储库。在您的情况下,一个存储在本地的裸存储库,位于../。。