2016-05-25 2 views
1

Im пытается реализовать nodegit для управления репо с gitlab, однако мне нужно использовать базовую аутентификацию пароля пользователя, а в документации используется только ssh. Я пытался использовать Cred.userpassPlaintextNew, но я получаю [Ошибка: слишком много переадресаций или повторы аутентификации], как это:Nodegit https auth

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); 
}); 

Как я могу это сделать?

ответ

0

Закончено внедрение git через дочерние процессы. В библиотеке Nodegit было много проблем, включая блокировку каталогов, чтобы вы не могли удалить их даже после возвращения функции.