相关疑难解决方法(0)

SSH密钥 - 仍然要求输入密码和密码

当我克隆存储库时,我一直在"忍受"Github总是询问我的用户名和密码.我想绕过这一步,因为这是我工作流程中的一个烦恼.

我尝试使用本指南设置SSH密钥(我成功完成了).https://help.github.com/articles/generating-ssh-keys我成功了.

我的问题是,在克隆存储库时(使用SSH),我仍然被要求输入我的github密码和密码.我的理解是,在设置了这个SSH密钥后,我不再需要这样做了.

我有点不确定要问什么,所以我只是陈述我的目标.

我希望能够克隆存储库而无需一直输入我的Github信息.

我的SSH密钥丢失了什么?如果有人可以提供一些指导或资源,我会很感激,因为在GitHub中进行SSH身份验证时,我总是感到有些失落.

据我所知,这是一个测试事情是否正常工作的命令,这是我控制台的输出:

~ $ ssh -T git@github.com
Saving password to keychain failed
Enter passphrase for key '/Users/MYNAME/.ssh/id_rsa':
Hi MYNAME! You've successfully authenticated, but GitHub does not provide shell access.
Run Code Online (Sandbox Code Playgroud)

当我输入密码时,首先应该失败吗?然后,当我输入我的密码时,它会通过.

git ssh github ssh-keys

428
推荐指数
20
解决办法
41万
查看次数

在docker容器内使用SSH密钥

我有一个应用程序,使用Git执行各种有趣的东西(如运行git clone和git push),我正在尝试停靠它.

我遇到了一个问题,虽然我需要能够在容器中添加SSH密钥以供容器"用户"使用.

我尝试将其复制/root/.ssh/,更改$HOME,创建一个git ssh包装器,但仍然没有运气.

这是Dockerfile供参考:

#DOCKER-VERSION 0.3.4                                                           

from  ubuntu:12.04                                                              

RUN  apt-get update                                                             
RUN  apt-get install python-software-properties python g++ make git-core openssh-server -y
RUN  add-apt-repository ppa:chris-lea/node.js                                   
RUN  echo "deb http://archive.ubuntu.com/ubuntu precise universe" >> /etc/apt/sources.list
RUN  apt-get update                                                             
RUN  apt-get install nodejs -y                                                  

ADD . /src                                                                       
ADD ../../home/ubuntu/.ssh/id_rsa /root/.ssh/id_rsa                             
RUN   cd /src; npm install                                                      

EXPOSE  808:808                                                                 

CMD   [ "node", "/src/app.js"]
Run Code Online (Sandbox Code Playgroud)

app.js 像git一样运行git命令 git pull

ssh-keys docker

289
推荐指数
24
解决办法
23万
查看次数

如何使用私有Github repo作为npm依赖

如何列出一个私人Github上回购为"dependency"package.json?我尝试了npm的Github URL语法ryanve/example,但是npm install在package文件夹中进行了私有依赖项的"无法安装"错误.是否有一个特殊的语法(或其他机制)依赖私人回购?

git github node.js npm package.json

178
推荐指数
6
解决办法
8万
查看次数

使用 GitHub 操作从私有 GitHub 存储库安装 npm 模块

我正在尝试使用 GitHub 操作为 Node.js 项目运行构建。作为 的一部分npm install,我需要直接从私有 GitHub 存储库(而不是来自 GPR!)安装 npm 模块。

package.json我有:

"dependencies": {
  ...
  "my-module": "github:<org>/<my-module>#master",
  ...
},
Run Code Online (Sandbox Code Playgroud)

但是,在运行时npm install,我得到:

npm 错误!git@github.com:权限被拒绝(公钥)。npm 错误!致命:无法从远程存储库读取。

存储库是我自己组织的一部分,它在本地(即从我的机器)工作。我怎样才能让这个运行?

我已经尝试设置NODE_AUTH_TOKEN环境变量,但没有任何区别。尽管您经常发现此建议,但它似乎只针对 GPR。我想避免的是必须将令牌硬编码到package.json文件中。对此有何想法?

github node.js npm github-actions

16
推荐指数
3
解决办法
5397
查看次数

npm安装错误代码128

我尝试npm install在全新安装Node和Git后运行时收到以下错误

在此输入图像描述

任何人都知道可能导致它的原因,以及如何解决这个问题?

package.json (删除公司详情)

{
    "name": "xxx",
    "version": "1.0.0",
    "description": "xxx",
    "engines": {
        "node": "5.0.0",
        "npm": "3.3.9"
    },
    "repository": "xxx",
    "private": true,
    "license": "UNLICENSED",
    "dependencies": {
        "dijit": "https://github.com/dojo/dijit.git#1.10.4",
        "dojo": "1.10.4",
        "fg-dialog": "0.1.5",
        "politespace": "0.1.4",
        "shoestring": "1.0.3"
    },
    "devDependencies": {
        "body-parser": "^1.14.1",
        "chalk": "^1.1.1",
        "compression": "^1.6.0",
        "del": "^2.0.2",
        "dojo-util": "https://github.com/dojo/util.git#1.10.4",
        "express": "^4.13.3",
        "glob": "^5.0.15",
        "gulp": "^3.9.0",
        "gulp-concat": "^2.6.0",
        "gulp-git": "^1.6.0",
        "gulp-html-minifier": "^0.1.6",
        "gulp-jsbeautifier": "^1.0.1",
        "gulp-jshint": "^1.11.2",
        "gulp-jshint-xml-file-reporter": "^0.5.1",
        "gulp-jsonminify": "^1.0.0",
        "gulp-replace": "^0.5.4",
        "gulp-task-listing": "^1.0.1",
        "gulp-uglify": "^1.4.1",
        "gulp-util": "^3.0.6", …
Run Code Online (Sandbox Code Playgroud)

git node.js npm

9
推荐指数
3
解决办法
4万
查看次数

在全局 npm install 上构建 Git 依赖

Npm 允许使用自定义 git URL 来指定依赖项(请参阅package.json 中的 npm install private github repositories by dependency)。

但是,这些依赖项通常打包并发布到 npm 注册表,因此可以按名称安装它们。这个发布过程通常包括构建文件、缩小文件等,这些文件通常在 github 中不可用。

使用自定义 git URL 安装依赖项时,可能需要这些构建、缩小等文件,但它们将不可用。

要生成这些文件,可以使用npm 脚本在安装生命周期中运行一个钩子。但是,我找不到适合此任务的脚本,因为:

  1. Prepublish不在全局安装中运行。它将被弃用,以支持prepareprepublishOnly
  2. Prepare也仅在本地安装上运行。(编辑: prepare 也可以在全局安装上运行,这与npm 脚本文档中所说的不同)
  3. Prepack安装 git 依赖项之前npm pack之后运行(如文档所述)。但是,在全局安装(节点 LTS 版本:v6.11.0,npm 版本(来自节点 LTS):3.10.10)中尝试此脚本时不会触发它。npm publish
  4. 最佳实践中不推荐预安装和安装

不要使用安装。使用 .gyp 文件进行编译,并为其他任何内容预发布。您几乎不必显式设置预安装或安装脚本。如果您正在这样做,请考虑是否还有其他选择。安装或预安装脚本的唯一有效用途是编译,必须在目标架构上完成。

  1. Postinstall也将在包的本地安装中运行,这不是预期的行为。

node.js npm

5
推荐指数
1
解决办法
933
查看次数

如何在 npm 中使用 package.json 依赖项的(环境)变量?

在 npm 中,我希望能够从私有 GitHub 存储库安装包作为依赖项,而git+https不必对实际的进行硬编码github_username:personal_access_token,而是将它们作为(环境)变量插入依赖项字符串中。

所以而不是

package.json:

...
"dependencies": {
  ...
  "my-private-github-repo": "git+https://<github_username>:<personal_access_token>@github.com/some/package.git",
  ...
}
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西:

package.json:

...
"dependencies": {
  ...
  "my-private-github-repo": "git+https://${github_username}:${personal_access_token}@github.com/some/package.git",
  ...
}
Run Code Online (Sandbox Code Playgroud)

在应用我希望能够执行的版本控制 时,硬编码凭据是一个主要禁忌。package.json

做这个的最好方式是什么?

github environment-variables npm package.json npm-install

5
推荐指数
1
解决办法
6642
查看次数

AWS CodeBuild 和 CodeCommit 存储库作为 npm 依赖项

我们有2份报告

  1. 回购 1
  2. 回购 2

在 Repo 1 > package.json 中有一个依赖项

"dependencies": {
    "repo-2": "git+https://git-codecommit.us-east-1.amazonaws.com/v1/repos/repo-2/"
}
Run Code Online (Sandbox Code Playgroud)

然后,在“repo-1”的 CodeBuild 中,我们有以下构建规范

version: 0.2

phases:
  install:
    runtime-versions:
      nodejs: 10
    commands:
      - mkdir -p ./deploy
  build:
    commands:
      - echo "Server copy START $(date)"
      - cp -r ./index.js ./deploy/index.js
      - cp -r ./package.json ./deploy/package.json
      - cp -r ./buildspec.yml ./deploy/buildspec.yml
      - echo "Server copy END $(date)"
      - echo "Server npm install START $(date)"
      - cd ./deploy && npm install --production
      - echo "Server npm install END …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-codecommit aws-codebuild

4
推荐指数
1
解决办法
3256
查看次数

作为依赖项的私有github repo在npm install上是无关紧要的

这是我第一次使用私有仓库作为另一个项目的依赖项.我认为我做得对,但安装后新项目中的依赖项不可用,并且不在node_modules中.

这篇文章之后,我可以看到我正确地将它包含在package.json中:

"myPackage": "git+https://github.com/myusername/mygitrepository.git"
Run Code Online (Sandbox Code Playgroud)

当我npm install在这个包上运行时,我看到它没有错误,但是在列表中的这个依赖项之后,它显示为extraneous(git+https://github.com/myusername/mygitrepository.git).

即使存在无关紧要的问题,也没有错误,并且依赖项不可用或在node_modules中列出.

更新:repo_A package.json

{
  "name": "project-name",
  "version": "1.0.0",
  "description": "Backend utility functions",
  "scripts": {
    "test": "mocha"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/user/repo.git"
  },
  "author": "me",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/user/repo/issues"
  },
  "homepage": "https://github.com/user/repo#readme",
  "dependencies": {
    "lodash": "^4.17.4",
    "mongodb": "^2.2.25",
    "redis": "^2.7.1",
    "winston": "^2.3.1"
  }
}
Run Code Online (Sandbox Code Playgroud)

更新:repo_B package.json

{
  "name": "main-project-name",
  "version": "1.0.0",
  "description": "",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/user/repo.git"
  },
  "author": "someone else",
  "homepage": "https://github.com/user/repo.git", …
Run Code Online (Sandbox Code Playgroud)

git node.js package.json npm-install

3
推荐指数
1
解决办法
2308
查看次数