ฉันต้องการที่จะปรับปรุงเบราว์เซอร์ซิงค์ของฉันโดยไม่มีการปรับปรุงทุกแพคเกจโหนดของฉัน ฉันจะบรรลุสิ่งนี้ได้อย่างไร Browser-sync เวอร์ชั่นปัจจุบันของฉันไม่มี Browser-sync GUI :(
├─┬ browser-sync@1.9.2
│ ├── browser-sync-client@1.0.2
ฉันต้องการที่จะปรับปรุงเบราว์เซอร์ซิงค์ของฉันโดยไม่มีการปรับปรุงทุกแพคเกจโหนดของฉัน ฉันจะบรรลุสิ่งนี้ได้อย่างไร Browser-sync เวอร์ชั่นปัจจุบันของฉันไม่มี Browser-sync GUI :(
├─┬ browser-sync@1.9.2
│ ├── browser-sync-client@1.0.2
คำตอบ:
เวลาส่วนใหญ่คุณสามารถเพียงแค่อัพเดต npm (หรืออัพเกรดเส้นด้าย ) โมดูลเพื่อรับการเปลี่ยนแปลงที่ไม่ทำลายล่าสุด(โดยใช้ semver ที่ระบุใน package.json ของคุณ) (<- อ่านส่วนสุดท้ายนั้นอีกครั้ง)
npm update browser-sync
-------
yarn upgrade browser-sync
- ใช้
npm|yarn outdated
เพื่อดูว่าโมดูลใดมีรุ่นที่ใหม่กว่า- ใช้
npm update|yarn upgrade
(ไม่มีชื่อแพ็คเกจ) เพื่ออัพเดตโมดูลทั้งหมด- รวม
--save-dev|--dev
ถ้าคุณต้องการบันทึกหมายเลขรุ่นที่ใหม่กว่าลงในแพ็คเกจ.jsonของคุณ (หมายเหตุ: ตั้งแต่ npm v5.0 นี่เป็นสิ่งที่จำเป็นเท่านั้นdevDependencies
)
การอัพเกรดรุ่นใหญ่:
ในกรณีของคุณดูเหมือนว่าคุณต้องการเวอร์ชันหลักถัดไป (v2.xx) ซึ่งมีแนวโน้มว่าจะมีการเปลี่ยนแปลงและคุณจะต้องอัปเดตแอปของคุณเพื่อรองรับการเปลี่ยนแปลงเหล่านั้น คุณสามารถติดตั้ง / บันทึกล่าสุด2.x.x
โดยทำ:
npm install browser-sync@2 --save-dev
-------
yarn add browser-sync@2 --dev
... หรือล่าสุด2.1.x
โดยทำ:
npm install browser-sync@2.1 --save-dev
-------
yarn add browser-sync@2.1 --dev
... หรือล่าสุดและยิ่งใหญ่ที่สุดโดยทำ:
npm install browser-sync@latest --save-dev
-------
yarn add browser-sync@latest --dev
หมายเหตุ:คนสุดท้ายไม่แตกต่างจากการทำสิ่งนี้:
npm uninstall browser-sync --save-dev npm install browser-sync --save-dev ------- yarn remove browser-sync --dev yarn add browser-sync --dev
--save-dev
ส่วนหนึ่งเป็นสิ่งที่สำคัญ สิ่งนี้จะถอนการติดตั้งลบค่าออกจาก package.json ของคุณจากนั้นติดตั้งเวอร์ชันล่าสุดและบันทึกค่าใหม่ไปยัง package.json ของคุณ
npm update browser-sync --save-dev
จะทำงานเพื่ออัปเดตเป็นเวอร์ชันหลักและบันทึก package-lock.json (หากมีอยู่)
npm update
จะติดตั้งล่าสุดที่เกี่ยวข้องของ semver วิธีเดียวที่จะอัปเดตเป็นเวอร์ชันหลักถัดไปคือทำอย่างชัดเจนตามที่ฉันอธิบายไว้ข้างต้น หากคุณไม่เคยติดตั้งแพ็กเกจและลองอัปเดต / บันทึกแพคเกจนั้นจะติดตั้งเวอร์ชันล่าสุด แต่นั่นไม่ใช่เรื่องธรรมดา นอกจากนี้ยังมี semver ที่ไม่ค่อยได้ใช้สำหรับการระบุรุ่นหลักล่าสุด - มันจะมีลักษณะเช่นนี้ใน package.json ของคุณ: browser-sync: '*'
หรือbrowser-sync: 'x'
- แต่ฉันไม่แนะนำให้ทำเช่นนั้น
--save-dev
ไม่จำเป็นต้องใช้ npm@5.0.0 เนื่องจากจะได้รับการบันทึกลงใน package.json โดยอัตโนมัติ ( docs.npmjs.com/cli/update )
ใช้npm outdated
เพื่อดูแพ็คเกจปัจจุบันและเวอร์ชั่นล่าสุดทั้งหมด
จากนั้นnpm i packageName@versionNumber
ในการติดตั้งรุ่นที่เฉพาะเจาะจง: ตัวอย่างเช่น npm i browser-sync@2.1.0
หรือnpm i packageName@latest
การติดตั้งรุ่นล่าสุด: ตัวอย่างเช่น npm i browser-sync@latest
คุณสามารถทำได้ด้วยตนเองเสมอ เหล่านี้คือขั้นตอน:
git clone github_url
node_modules
โฟลเดอร์ของคุณเช่นnode_modules/browser-sync
ตอนนี้มันควรจะทำงานให้คุณ เพื่อให้แน่ใจว่ามันจะไม่แตกในอนาคตเมื่อคุณทำnpm i
ต่อไปสองขั้นตอนต่อไป:
package.json
ไฟล์ในโฟลเดอร์package.json
และตั้งค่ารุ่นเดียวกันกับที่ปรากฏในdependencies
ส่วนของคุณpackage.json
ในขณะที่ยังไม่แนะนำให้ทำด้วยตนเอง บางครั้งเป็นการดีที่จะเข้าใจว่าสิ่งต่าง ๆ ทำงานภายใต้ประทุนอย่างไรเพื่อให้สามารถแก้ไขสิ่งต่าง ๆ ได้ ฉันพบว่าตัวเองทำมันเป็นครั้งคราว
npm install browser-sync@latest
อาจจะ. ควรเขียนทับมันด้วยสิ่งล่าสุด (สมมุติว่ามีการแตกร้าวหรือไม่)