Instale ramificação específica do github usando o Npm


164

Gostaria de instalar o bootstrap-loader do github no meu projeto usando o npm

Atualmente, eles mantêm duas versões deste projeto, que podem ser mantidas com as versões 1 e 2 do webpack.

Eu gostaria de instalar a versão 1 . Qual comando npm devo usar para instalar isso?

Eu tentei usar abaixo de um, mas não está funcionando.

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

Respostas:


252

Existem colchetes extras no comando que você tentou.

Para instalar a versão mais recente da v1filial, você pode usar:

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

5
se tivéssemos que anexar a versão específica. então como seria junto com o branch?
Md_Zubair Ahmed

2
@Md_ZubairAhmed O nome do ramo em seu exemplo passou a ser chamado de "v1" - poderia ser chamado de algo como "meu ramo" e se comportou da mesma maneira.
Venryx 23/10/19

1
Se você deseja instalar um comit específico, você pode: npm install https://github.com/username/package#3d0a21ccOnde 3d0a21ccestão os oito primeiros caracteres do hash de confirmação. Encontrei esta resposta aqui
Derk Jan Speelman

62

Apenas faça:

npm install username/repo#branchName --save

por exemplo (meu nome de usuário é 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"

Uma coisa que também quero mencionar: não é uma boa ideia fazer check-in no package.json para que o servidor de construção faça a alteração automaticamente. Em vez disso, coloque o npm i (primeiro comando) no comando build e deixe o servidor apenas instalar e substituir o pacote.


Alguma chance de você fazer isso para um pacote dentro de um monorepo?
Paul Razvan Berg

@PaulRazvanBerg Sim, você pode fazernpm install <folder>
Thilak Rao

Não funciona: npm i facebook / github.com/facebook/jest.git#master --save. Ou então: npm i facebook/git@github.com: facebook / jest.git # master --save. Também não funciona
Donato

@Donato Por favor, siga o padrão no exemplo
Xin

@ Xin não funciona: npm i facebook / jest # master --save ERR! Não é possível instalar o github: facebook / jest # b5c7092687a265e3f4f2ba6f9787e47e8c6b9d5e: Nome do pacote ausente
Donato

28

você pode fornecer o padrão git como version, yarn e npm são inteligentes o suficiente para resolver a partir de um repositório git.

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

ou para npm

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

Não funciona Tente o seguinte: npm i jest @ facebook / git @ github.com: facebook / jest.git # master
Donato

5

Outra abordagem seria adicionar a seguinte linha às package.jsondependências:

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

Por exemplo:

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

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

E então faça npm installouyarn install


2

Estou usando o SSH para autenticar minha conta do GitHub e ter algumas dependências no meu projeto instaladas da seguinte maneira:

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

2
Obrigado por isso!
Alexey Strizhak

0

Tentei as respostas sugeridas, mas consegui trabalhar apenas com essa abordagem de prefixo:

npm i github:user/repo.git#version --save -D

2
Adicione algumas explicações com a resposta de como esta resposta ajuda o OP a corrigir o problema atual
#

0

Tive que colocar o url entre aspas para que funcionasse

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

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.