使用Npm从github安装特定分支


164

我想使用npm在我的项目中从github安装bootstrap-loader

当前,他们正在维护该项目的两个版本,它们与webpack版本1和2兼容。

我想安装版本1。我应该使用什么npm命令来安装它?

我尝试使用以下之一,但无法正常工作。

npm install git://github.com/shakacode/bootstrap-loader.git[#v1] --Save 

Answers:


253

您尝试的命令中还有多余的方括号。

要从v1分支机构安装最新版本,可以使用:

npm install git://github.com/shakacode/bootstrap-loader.git#v1 --save

5
如果我们必须附加特定版本。那么分支会如何呢?
Md_Zubair Ahmed'Mar

2
@Md_ZubairAhmed在他的示例中,分支名称恰好被命名为“ v1”-可以使用“ my-branch”之类的其他名称,并且行为方式相同。
Venryx

1
如果要安装特定的密码,可以执行以下操作:提交哈希的前八个字符npm install https://github.com/username/package#3d0a21cc在哪里3d0a21cc。我在这里
Derk Jan Speelman

61

做就是了:

npm install username/repo#branchName --save

例如 (我的用户名是betimer)

npm i betimer/rtc-attach#master --save

// and what will appear in your package.json will be:
"rtc-attach": "github:betimer/rtc-attach#master"

我还想提到一件事:检入package.json以使构建服务器自动提取更改不是一个好主意。相反,将npm i(第一个命令)放入build命令中,然后让服务器安装并替换软件包。


您是否有可能对monorepo中的软件包执行此操作?
Paul Razvan Berg,

@PaulRazvanBerg是的,你可以做npm install <folder>
Thilak Rao

不起作用:npm i facebook / github.com/facebook/jest.git#master --save。或这样:npm我facebook/git@github.com:facebook / jest.git#master-保存。也不起作用
Donato

@Donato请遵循示例中的模式
Xin

@Xin不起作用:npm i facebook / jest#master-保存ERR!无法安装github:facebook / jest#b5c7092687a265e3f4f2ba6f9787e47e8c6b9d5e:缺少软件包名称
Donato

29

您可以提供git模式作为版本,yarn和npm足够聪明,可以从git repo中解析。

yarn add any-package@user-name/repo-name#branch-name

或为npm

npm install --save any-package@user-name/repo-name#branch-name

不起作用 尝试以下操作:npm i jest @ facebook / git @ github.com:facebook / jest.git#master
Donato

5

另一种方法是将以下行添加到package.json依赖项:

"package-name": "user/repo#branch"

例如:

"dependencies": {
    ... other dependencies ...

    "react-native": "facebook/react-native#master"
}

然后做npm installyarn install


2

我正在使用SSH验证我的GitHub帐户,并在我的项目中安装了几个依赖项,如下所示:

"dependencies": {
  "<dependency name>": "git+ssh://git@github.com/<github username>/<repository name>.git#<release version | branch>"
}

2
这次真是万分感谢!
Alexey Strizhak


0

必须将网址放在引号中才能正常工作

npm install "https://github.com/shakacode/bootstrap-loader.git#v1" --save

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.