2017-08-01 249 views
1

我想在本地建立这个项目我的桌面上使用Mac OS X 10.12在:
https://github.com/lionsharecapital/lionshare-desktop纱失败:权限被拒绝(公钥)

当我跑纱,我得到:

yarn install v0.27.5 
[1/4] Resolving packages... 
[2/4] Fetching packages... 
error Command failed. 
Exit code: 128 
Command: git 
Arguments: clone ssh://[email protected]/prettier/prettier.git /Users/patrick/Library/Caches/Yarn/v1/.tmp/998d9289033d5404a23434d3979d79dc 
Directory: /Users/patrick/dev/lionshare-desktop 
Output: 
Cloning into '/Users/patrick/Library/Caches/Yarn/v1/.tmp/998d9289033d5404a23434d3979d79dc'... 
Permission denied (publickey). 
fatal: Could not read from remote repository. 

Please make sure you have the correct access rights 
and the repository exists. 
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. 

超级迷糊,我手动运行git clone ssh://[email protected]/prettier/prettier.git /Users/patrick/Library/Caches/Yarn/v1/.tmp/998d9289033d5404a23434d3979d79d

它工作得很好......所以,有些时候如何使用纱混帐,它不是利用我的全球混帐配置的?

我该如何解决这个问题?

UPDATE

尝试这种在不同的计算机上奇怪的是没有这个问题,但在安装后,我照他们的指示说:

yarn run dev 

,但我得到:

yarn run v0.27.5 
$ concurrently -k 'node desktop/server.dev.js' 'npm start' 
[1] module.js:487 
[1]  throw err; 
[1] ^
[1] 
[1] Error: Cannot find module 'update-notifier' 
[1]  at Function.Module._resolveFilename (module.js:485:15) 
[1]  at Function.Module._load (module.js:437:25) 
[1]  at Module.require (module.js:513:17) 
[1]  at require (internal/module.js:11:18) 
[1]  at /usr/local/lib/node_modules/npm/bin/npm-cli.js:29:19 
[1]  at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:92:3) 
[1]  at Module._compile (module.js:569:30) 
[1]  at Object.Module._extensions..js (module.js:580:10) 
[1]  at Module.load (module.js:503:32) 
[1]  at tryModuleLoad (module.js:466:12) 
[1] npm start exited with code 1 
[0] listening on 3000 
--> Sending SIGTERM to other processes.. 
[0] node desktop/server.dev.js exited with code null 
error Command failed with exit code 1. 
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. 

第2次更新

因此很明显,通过运行线,我打破了故宫完全,因为我发现,如果我试图用NPM做任何事情,我得到同样的错误:

>npm 
module.js:487 
    throw err; 
    ^

Error: Cannot find module 'update-notifier' 
    at Function.Module._resolveFilename (module.js:485:15) 
    at Function.Module._load (module.js:437:25) 
    at Module.require (module.js:513:17) 
    at require (internal/module.js:11:18) 
    at /usr/local/lib/node_modules/npm/bin/npm-cli.js:29:19 
    at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:92:3) 
    at Module._compile (module.js:569:30) 
    at Object.Module._extensions..js (module.js:580:10) 
    at Module.load (module.js:503:32) 
    at tryModuleLoad (module.js:466:12) 

这似乎是一个相当灾难!

更新3

卸载节点并重新安装并没有解决这个问题,我不得不删除〜/ .npm,和/ usr/local/lib目录/ node_modules,然后卸载节点并重新安装,现在NPM工作再次...... Geez ......对于我如何在不破坏我的开发环境的情况下构建这个项目有任何想法?

回答

0

yarnpkg PR 2384 (yarnpkg 0.19.0)应该已经修复了任何与ssh URL有关的问题。
检查如果URL不应该

git+ssh://[email protected]:prettier/prettier.git 

而且,这似乎是一个公开回购,所以你可以尝试的HTTPS URL,以及:对克隆说公共回购不需要认证。

关于第二个错误消息,您可以按照issue kraken-js/issues/79
作为第一个解决方法:

npm install -g update-notifier, 
+0

我想这在不同的电脑上,并通过SSH一步就好了(奇怪)了,但我在尝试运行开发服务器时,一个完全不同的错误,所以我更新我的问题... – patrick

+0

@patrick我已经编辑了我的答案 – VonC

+0

使用npm来安装纱线项目的依赖不是很奇怪吗?我的意思是,它不是管理所有需要的东西的全部重点吗? – patrick