我正在尝试实现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/

10-10 03:23