您收到此错误是因为您通过 ssh-urls 指定了子模块。要从 travis-ci 环境进行 ssh 访问,您需要配置一个密钥。
或者,你可以只为你的 git 子模块使用相对 URL,因为你的项目和你的子模块都在 Github 上可用。
Git 根据ORIGIN
.
例子:
使用您的前 2 个条目.gitmodules
:
[submodule "lib/es5-shim"]
path = lib/es5-shim
url = git@github.com:kriskowal/es5-shim.git
[submodule "build/html"]
path = build/html
url = git@github.com:quadroid/clonejs.git
替换为相对 URL:
[submodule "lib/es5-shim"]
path = lib/es5-shim
url = ../../kriskowal/es5-shim.git
[submodule "build/html"]
path = build/html
url = ../clonejs.git
然后当通过 https 克隆时 - 比如说 - 原点设置如下:
$ git clone https://github.com/quadroid/clonejs.git
$ cd clonejs
$ git remote -v
origin https://github.com/quadroid/clonejs.git (fetch)
origin https://github.com/quadroid/clonejs.git (push)
通过 ssh 克隆时:
$ git clone git@github.com:quadroid/clonejs.git
$ cd clonejs
$ git remote -v
origin git@github.com:quadroid/clonejs.git (fetch)
origin git@github.com:quadroid/clonejs.git (push)
使用相对 url,通常的子模块序列独立于原点工作:
$ git submodule init
$ git submodule update