ติดตั้งเฉพาะสาขาจาก github โดยใช้ Npm


164

ฉันต้องการติดตั้ง bootstrap-loader จาก github ในโครงการของฉันโดยใช้ npm

ขณะนี้พวกเขากำลังบำรุงรักษาสองเวอร์ชันของโครงการนี้ซึ่งสามารถใช้ร่วมกับ webpack เวอร์ชัน 1 และ 2 ได้

ผมอยากจะติดตั้งรุ่น1 คำสั่ง npm อะไรที่ฉันควรใช้เพื่อติดตั้งสิ่งนี้?

ฉันลองใช้ต่ำกว่าอันใดอันหนึ่ง แต่มันไม่ทำงาน

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

คำตอบ:


253

มีวงเล็บเหลี่ยมพิเศษในคำสั่งที่คุณลอง

ในการติดตั้งเวอร์ชั่นล่าสุดจากv1สาขาคุณสามารถใช้:

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

5
ถ้าเราต้องแนบรุ่นที่เฉพาะเจาะจง แล้วจะเป็นไปได้อย่างไรกับสาขา?
Md_Zubair Ahmed

2
@Md_ZubairAhmed ชื่อสาขาในตัวอย่างของเขาเพิ่งจะถูกตั้งชื่อว่า "v1" - มันอาจจะตั้งชื่ออย่างอื่นเช่น "my-branch" และทำงานในลักษณะเดียวกัน
Venryx

1
หากคุณต้องการติดตั้ง comit เฉพาะที่คุณสามารถทำได้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 และให้เซิร์ฟเวอร์เพิ่งติดตั้งและแทนที่แพ็กเกจ


โอกาสใดที่คุณสามารถทำได้สำหรับแพ็คเกจภายในโมโนเรนโป?
Paul Razvan Berg

@PaulRazvanBerg ใช่คุณสามารถทำได้npm install <folder>
Thilak Rao

ใช้งานไม่ได้: npm i facebook / github.com/facebook/jest.git#master --save หรือสิ่งนี้: npm i facebook/git@github.com: facebook / jest.git # master --save ใช้งานไม่ได้เช่นกัน
Donato

@ Donato โปรดปฏิบัติตามรูปแบบในตัวอย่าง
Xin

@Xin มันใช้งานไม่ได้: npm ฉัน facebook / jest # master - บันทึกข้อผิดพลาด! ไม่สามารถติดตั้ง github: facebook / jest # b5c7092687a265e3f4f2ba6f9787e47e8c6b9d5e: ชื่อแพ็กเกจที่ขาดหายไป
Donato

29

คุณสามารถให้รูปแบบ git เป็นเวอร์ชัน, yarn และ npm ได้ฉลาดพอที่จะแก้ไขจาก repo git

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 installหรือyarn install


2

ฉันใช้ SSH เพื่อตรวจสอบสิทธิ์บัญชี GitHub ของฉันและมีการอ้างอิงสองสามอย่างในโครงการของฉันที่ติดตั้งดังนี้:

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

2
ขอบคุณสำหรับสิ่งนี้!
Alexey Strizhak

1

ต้องใส่ url ในเครื่องหมายคำพูดเพื่อให้ทำงานได้

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

0

พยายามตอบคำถามที่แนะนำ แต่ใช้งานได้กับแนวทางนำหน้านี้เท่านั้น:

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

2
เพิ่มคำอธิบายพร้อมคำตอบสำหรับวิธีที่คำตอบนี้ช่วย OP ในการแก้ไขปัญหาปัจจุบัน
Kяσѕρєя K

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.