在不同的机器上使用不同的git子模块URL

迈克尔·伦纳德

一台机器上是否可以使用一个子模块URL,而另一台机器上可以使用另一个子模块URL?

假设我有一台机器已经对中央服务器上的git存储库进行SSH访问的身份验证,而另一台计算机没有该服务器的访问权限。在经过身份验证的计算机上,我曾经git-daemon将存储库共享给未经身份验证的计算机。

这里的问题是,我克隆的存储库具有几个子模块依赖项,所有这些依赖项都是服务器上需要身份验证SSH访问的存储库。在这种情况下,我还将所有子模块存储在经过身份验证的机器上,因此我可以从以下位置简单地更新.gitmodules文件:

[submodule "@sub-a"]
    url = ssh://<authenticated-url>/<repo>
    branch = master

至...

[submodule "@sub-a"]
    url = git://<ip-of-authenticated-machine>/<repo>
    branch = master

然后运行git submodule syncgit submodule update --init -r将直接从经过身份验证的计算机而不是从服务器获取子模块。

那么我的问题是,是否有任何便携式方法可以做到这一点,以便我可以在机器之间自由移动并期望正确的git-submodule行为

发光二极管

您可以在中更改子模块属性.git/config根据您的情况,您可以url[submodule "<name>"]部分更改请记住,这些属性将无法生存git submodule deinitgit submodule sync
详细

git submodule deinit     # deinitialize submodule, relevant section in .git/config will be removed
rm -fdr .git/modules/    # clear submodules' local repos
git submodule init       # relevant section will be copied (partially) from .gitmodules to .git/config
...                      #Edit .git/config with new url for submodule
git submodule update     # submodule will be updated from new url.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在声明管道中使用不同的部署密钥签出git子模块

对不同的模块使用不同的Git存储库

不同分支中的 git 子模块

对不同的模块使用不同的配置选项

RandomForestClassifier.fit在不同机器上使用不同数量的RAM

在Git子模块上使用Bower的好处

Git合并策略与子模块的不同分支

子模块不是git命令(在Windows的GIT上使用NPM)

对JSON Tableview使用不同的URL链接

是否可以为不同的项目使用不同的Git配置?

在同一台机器上使用github和公司的gitlab时如何使用不同的用户?

如何在不同的选择上使用不同的功能

WordPress >>在不同的网页上使用不同的CSS

如何获得R以在不同的线段上使用不同的颜色

libGDX-在不同的屏幕上使用不同的InputProcessor?

如何在构建服务器和开发人员的机器上使用不同的属性文件集?

主存储库的不同分支如何使用子模块的不同分支?

我可以根据URL使用不同的作者信息作为Git存储库吗

为每个Android版本使用不同的库模块

嘲笑模拟模块多次使用不同的值

在本地项目中使用不同的模块共享实例

对Maven模块使用不同的配置文件

编写文件,读取文件并使用不同的模块进行调用

如何根据应用程序设置使用不同的模块?

如何从不同的分支带来子模块?

使用不同的视图

来自nltk模块的类似方法在不同的机器上产生不同的结果。为什么?

pysys。在不同模块上使用Pysys的日志

不同机器上的不同内核版本