热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

当我执行npminstall时,GitClone的权限被拒绝-PermissiondeniedforGitClonewhenIdonpminstall

Ihavegitdependenciesinmypackage.jsonfile.WhenIdosudonpminstallinmyreactappfolder,

I have git dependencies in my package.json file. When I do sudo npm install in my react app folder, I get this error

我的package.json文件中有git依赖项。当我在我的react app文件夹中执行sudo npm install时,我收到此错误

    npm ERR! code 1
    npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master 
    https://github.com/lrojas94/react-file-base64.git /home/admin1/.npm/_cacache/tmp/git-clone-462782fb
    npm ERR! /home/admin1/.npm/_cacache/tmp/git-clone-462782fb/.git: Permission denied
    npm ERR! 

    npm ERR! A complete log of this run can be found in:
    npm ERR!     /home/admin1/.npm/_logs/2017-07-18T08_58_10_906Z-debug.log
    admin1@ubuntu:~/hys_pms/ui$ nohup: appending output to ‘nohup.out’

This is my package.json

这是我的package.json

    {
      "name": "react-hys-app",
      "version": "0.1.0",
      "private": true,
      "dependencies": {
        "annogenerate": "^0.8.1",
        "bootstrap": "^3.3.7",
        "cors-prefetch-middleware": "^1.0.0",
        "es6-promise": "^4.1.0",
        "express": "^4.15.3",
        "fixed-data-table": "^0.6.4",
        "flexbox-react": "^4.4.0",
        "font-awesome": "^4.7.0",
        "images-upload-middleware": "^1.1.1",
        "isomorphic-fetch": "^2.2.1",
        "jquery": "^3.2.1",
        "react": "^15.3.1",
        "react-autosuggest": "^9.0.1",
        "react-avatar-cropper": "^0.1.3",
        "react-bootstrap": "^0.30.8",
        "react-bootstrap-autosuggest": "^0.5.0",
        "react-bootstrap-date-picker": "^5.0.1",
        "react-bootstrap-table": "^3.3.1",
        "react-checkbox-list": "0.0.2",
        "react-datepicker": "^0.51.0",
        "react-datetime": "^2.8.10",
        "react-dom": "^15.4.0",
        "react-dual-listbox": "^1.1.0",
        "react-edit": "^6.3.0",
        "react-file-base64": "git+https://github.com/lrojas94/react-file-base64.git",
        "react-flexbox-grid": "^1.1.3",
        "react-grid-layout": "^0.14.6",
        "react-images-uploader": "^1.0.1",
        "react-pagify": "^2.2.0",
        "react-panelgroup": "^1.0.2",
        "react-radio-button-group": "^1.2.5",
        "react-redux": "^5.0.4",
        "react-router": "^2.7.0",
        "react-s-alert": "^1.3.0",
        "react-select": "^1.0.0-rc.5",
        "react-visibility-toggles": "^1.1.1",
        "reactabular-resizable": "^8.9.0",
        "reactabular-table": "^8.9.0",
        "recompose": "^0.23.5",
        "redux": "^3.6.0",
        "redux-devtools-extension": "^2.13.0",
        "redux-thunk": "^2.2.0",
        "redux-undo": "^1.0.0-beta9-9-1",
        "reflexbox": "^3.0.0-0",
        "schema2object": "^0.4.0",
        "searchtabular": "^1.5.0",
        "segmentize": "^0.4.1",
        "sortabular": "^1.4.0",
        "table-resolver": "^3.1.0"
      },
      "devDependencies": {
        "css-loader": "^0.28.4",
        "react-scripts": "0.9.5",
        "style-loader": "^0.18.2"
      },
      "scripts": {
        "start": "react-scripts start",
        "build": "react-scripts build",
        "test": "react-scripts test --env=jsdom",
        "eject": "react-scripts eject"
      }
    }

This line in package.json makes the issue.

package.json中的这一行引发了这个问题。

"react-file-base64": "git+https://github.com/lrojas94/react-file-base64.git"

I am struck with this issue. Kindly help.

我很震惊这个问题。请帮助。

3 个解决方案

#1


1  

I don't know whether your problem is solved or not. Today i faced the same issue the problem was ~/.npm folder is messing with permission so I changed permission as sudo chown -R $(whoami) ~/.npm and it is working fine.

我不知道你的问题是否得到了解决。今天我遇到了同样的问题,问题是〜/ .npm文件夹弄乱了权限所以我改变了权限,因为sudo chown -R $(whoami)〜/ .npm并且它工作正常。

#2


0  

This is not a proper fix, but it worked for me, so you can give it a try. Go to super user mode and then do npm install with sudo.

这不是一个正确的解决方案,但它对我有用,所以你可以尝试一下。转到超级用户模式,然后使用sudo执行npm install。

sudo su
sudo npm install

#3


0  

I had this exact same error with installing chimp (not from a git repo) after I'd upgraded from NodeJS 6.10 to 8.10 (and more importantly, to NPM 5.6.0). The problem is that npm 5 handles permissions / directories very differently than npm 4.

在我从NodeJS 6.10升级到8.10(更重要的是,到NPM 5.6.0)后,我安装了chimp(不是来自git repo)时出现了同样的错误。问题是npm 5处理权限/目录的方式与npm 4完全不同。

The solution is to NEVER use sudo when running npm 5. You'll find cases of when you have to use it with npm 4, but you shouldn't need to use sudo with npm 5. If you're installing globally, this link might help you. It didn't help me.

解决办法是在运行npm 5时不要使用sudo。你会发现你必须在npm 4中使用它的情况,但你不需要在npm 5使用sudo。如果你在全球安装,这个链接可能会帮助你。它没有帮助我。

Since I was in a docker container, I could just modify my docker file to not use sudo and then everything was fine. If you're not, I suggest you run the following as your user (not root):

由于我在一个docker容器中,我可以修改我的docker文件以不使用sudo然后一切都很好。如果您不是,我建议您以用户身份运行以下内容(不是root用户):

cd ~
sudo rm -rf .npm
cd 
npm cache clean
rm -rf node_modules
npm install

推荐阅读
author-avatar
lodng
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有