【发布时间】:2020-01-21 09:39:11
【问题描述】:
我正在努力在 Windows 计算机上安装来自 gitlab 存储库的软件包。
我发现了不同的提示,但从 gitlab 安装我的包仍然有问题。
首先,我用 puttygen.exe 生成了一个公钥和私钥
之后需要更改文件,我必须删除 cmets 和其他东西,以便它们看起来像我在我的 unix 系统上的文件。所以现在,公钥和私钥文件都只有一行。
我尝试通过devtools::install_git 安装我的包,这需要很长时间,我收到错误消息
Error: Failed to install 'unknown package' from Git:
Error in 'git2r_remote_ls': Failed to authenticate SSH session: Unable to send userauth-publickey request
使用devtools::install_gitlab,我收到一条不同的错误消息,我有一种感觉,生成的链接不适合我的 gitlab 服务器。
Error: Failed to install 'unknown package' from GitLab:
cannot open URL 'https://gitlab.rlp.net/api/v4/projects/madejung%2FMQqueue.git/repository/files/DESCRIPTION/raw?ref=master'
我目前要测试的完整代码是
creds <- git2r::cred_ssh_key(publickey="~/.ssh/id_rsa_gitlab.pub",
privatekey="~/.ssh/id_rsa_gitlab")
devtools::install_git(
url='git@gitlab.rlp.net:madejung/MQqueue.git',
quiet=FALSE,
credentials=creds)
devtools::install_gitlab(
repo='madejung/MQqueue.git',
host='gitlab.rlp.net',
quiet=FALSE,
credentials=creds
)
我的id_rsa_gitlab.pub 文件看起来像这样,只有一行
ssh-rsa AAAA....fiwbw== rsa-key-20200121
id_rsa_gitlab 文件只有代码
AAABA.....3WNSIAGE=
更新
在我的 Mac 系统上,通过 homebrew 安装 libssh2 库并使用 install.packages("git2r", type = "source") 重新编译 git2r 后,它可以正常工作。
所以我机器上的工作代码是
creds <- git2r::cred_ssh_key(publickey="~/.ssh/id_rsa_gitlab.rlp.net.pub",
privatekey="~/.ssh/id_rsa_gitlab.rlp.net")
devtools::install_git(
url='git@gitlab.rlp.net:madejung/MQqueue.git',
quiet=FALSE,
credentials=creds
)
由于某种奇怪的原因,devtools::install_git 调用最终需要大约一分钟才能失败。我不知道问题出在哪里。
【问题讨论】: