Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取作为git子模块添加的依赖项的子依赖项_Git_Go_Dependencies_Git Submodules_Go Modules - Fatal编程技术网

如何获取作为git子模块添加的依赖项的子依赖项

如何获取作为git子模块添加的依赖项的子依赖项,git,go,dependencies,git-submodules,go-modules,Git,Go,Dependencies,Git Submodules,Go Modules,假设我正在从事一个名为X的Go项目,它依赖于回购协议Y。 我还没有在我的项目X中使用go mods 现在,我已使用以下命令将Y作为git子模块添加到供应商包中的项目X中: git子模块添加 repo Y对项目有子依赖关系,比如在Gopkg.toml和go.mod文件中定义的Z。现在,当我将代码放到服务器上并运行以下命令来获取子模块Y时,依赖项Z的文件仍然丢失 如何使用Gopkg.toml和go.mod文件下载Z文件,而不显式进入Y并下载 “我已修改了供应商包装,因此无法切换到go mod” 实际

假设我正在从事一个名为X的Go项目,它依赖于回购协议Y。
我还没有在我的项目X中使用go mods

现在,我已使用以下命令将Y作为git子模块添加到供应商包中的项目X中:
git子模块添加

repo Y对项目有子依赖关系,比如在Gopkg.tomlgo.mod文件中定义的Z。现在,当我将代码放到服务器上并运行以下命令来获取子模块Y时,依赖项Z的文件仍然丢失


如何使用Gopkg.toml和go.mod文件下载Z文件,而不显式进入Y并下载

“我已修改了供应商包装,因此无法切换到go mod”

实际上,您可以在go.mod中使用


这样,a/应该下载
Z

“而不显式地进入Y并下载”;你不想这样做有什么原因吗?@Alex是的,所以当我使用Jenkins job部署时,我不必使用蛮力来让它工作。我应该能够在projectx的根级别执行命令。“我还没有在projectx中使用go-mods。”那么你就做错了,没有办法帮助你。现在到处使用Go模块。“我已经修改了一个供应商包装”,所以你就产生了依赖关系。然后导入分叉依赖项。或者
用fork替换该依赖项。这是一个XY问题。你可以用艰难的方式使用工具,也可以用简单的方式使用工具。使用Go模块。它们支持你尝试做的每件事,而且做得很干净。在您尝试使用不受支持的工具时,会导致混乱。感谢@VonC为您提供解决方案that@Rajvir没问题。别忘了读书
replace example.com/original/import/path => vendor/Y