3

我正在尝试使用NodeGit从私有存储库中为我的应用程序下载一些教程。我正在使用令牌通过 https 进行身份验证和下载。问题是,如果用户已设置

[url "git@github.com:"]
    insteadOf = https://github.com/

.gitconfig,它将失败,回调返回不支持的凭据类型错误。我尝试使用Config API,但不确定我是否正确执行此操作,因为文档中没有对此的描述。

这是我的代码:

fse     = require 'fs-extra'
Git     = require 'nodegit'

...

cloneOpts =
    fetchOpts:
        callbacks:
            certificateCheck: => 1
            credentials: (url, userName) =>
                return Git.Cred.userpassPlaintextNew(myUser, myToken)
            transferProgress: (stats) =>
                p = (stats.receivedObjects() + stats.indexedObjects()) / (stats.totalObjects() * 2)
                try
                    progress p
                catch error
                    console.log error
fse.remove dstPath, (err) =>
    Git.Clone(tutorial.uri, dstPath, cloneOpts)
        .then((repo) =>
            console.log 'success')
        .catch((error) =>
            console.log error.message)

如何让 NodeGit 忽略用户.gitconfig

4

0 回答 0