[英](nodegit) How to read/write from/to private Github repo using a token
[英]nodegit: cloning private repository using GitHub API token is not working
我想使用一个npm包nodegit克隆一个私有存储库。 我遵循了有关克隆私有存储库的指南 ,并将克隆选项设置为fllow,
cloneOptions:
remoteCallbacks:
certificateCheck: ()-> return 1
credentials: ()->
return NodeGit.Cred.userpassPlaintextNew(GITHUB_TOKEN, "x-oauth-basic")
但我收到一条错误消息, "authentication required but no callback set"
。 因此,我检查了nodegit
一些相关源代码, nodegit
如下所示设置cloneOptions
,
cloneOptions =
fetchOpts:
callbacks:
certificateCheck: ()-> return 1 # For OS X issue with GitHub certificate
credentials: ()->
cred = NodeGit.Cred.userpassPlaintextNew(GITHUB_TOKEN, "x-auth-basic")
return cred
这段代码的行为有些奇怪,因为它似乎在克隆存储库,但是cloneOpts.fetchOpts.callbacks.credential()
被重复调用,并且程序不会停止运行。
如果我改为使用用户名和密码作为git.Cred.userpassPlaintextNew
参数,则只会调用一次git.Cred.userpassPlaintextNew
credentials()
(这是预期的行为),并且会克隆存储库。
谁能给我一些提示我的代码有什么问题吗?
与远程托管服务通信时,不良凭据将导致nodegit重新尝试您的请求。 根据您使用的是Windows还是Mac,该请求将无限期重试,或者重试5次。
因此,我想您的OAuth凭据不正确,并且nodegit不断重试该请求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.