我正在尝试实现gitlab以使用gitlab进行回购控制,但是我需要使用基本的用户名密码身份验证,并且文档仅使用ssh。我尝试使用Cred.userpassPlaintextNew,但是我得到了[错误:重定向或身份验证重放过多],如下所示:
var nodegit = require('nodegit'),
path = require('path');
var url = "https://gitlab.com/myuser/myrepo.git",
local = "./clone",
cloneOpts = {
fetchOpts: {
callbacks: {
credentials: function() {
return nodegit.Cred.userpassPlaintextNew('myuser','mypass')
}
}
}
};
nodegit.Clone(url, local, cloneOpts).then(function (repo) {
console.log("Cloned " + path.basename(url) + " to " + repo.workdir());
}).catch(function (err) {
console.log(err);
});
我怎样才能做到这一点?
最佳答案
最终通过子进程实现了git。 Nodegit库有很多问题,包括锁定目录,因此即使函数返回后也无法删除它们。
关于node.js - Nodegit https身份验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37443604/