4.0" ติดตั้ง fuzzy versions">
 Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Ruby

3 เคล็ดลับ RubyGems ที่ทำให้ Workflow ราบรื่น

ผม update Ruby และ upgrade projects ไม่กี่โครงการ และพบ RubyGems features สนุกที่ไม่รู้มาก่อน:

ตอน Executables เก่า

เคย用 rvm จัดการ Ruby versions แตครั้งล่าสุด setup เครื่อง ลองไม่ใช้ ไม่ต้อง Gemsets ตอน有 Bundler และ Homebrew update Ruby

ใช้ได้ดี จน update Ruby แล้ว rails new, bundle install commands พัง จะชี้ไป เก่า Ruby version

แก้ได้โดย uninstall/reinstall gems ทีละตัว แตแค่ crazy ลอง gem pristine:

gem pristine --all --only-executables

gem pristine reset gem กลับสู่ version ที่ download ต้นทาง เหมือน uninstall/reinstall (ช่วยตอนแก้ไข gem debug แล้วลืม revert)

--all = all gems, --only-executables = แค่ files เช่น /usr/local/bin/rails และ /usr/local/bin/bundle นั่นคือ แค่ fix scripts ที่用รัน gem จาก command line

คำสั่งนี้ reset /usr/local/bin/rails กลับสู่สภาพตอน uninstall/reinstall

หนึ่งนาที กลับมาทำงานต่อได้

ตอนต้องการ Version เก่า

ตอนเขียน post เรื่อง respond_to สร้าง tiny apps 学习 用 Rails versions ต่างๆ ดูว่าแต่ละ version จัดการ respond_to และ respond_with ยังไง

Generate Rails app แต่ละตัวด้วย version ใด ไม่ต้อง:

gem install rails -v 4.0.0 rails new respond_to_4.0 gem uninstall rails gem install rails -v 4.1.0 rails new respond_to_4.1 gem uninstall rails

มีวิธีง่าย บอก RubyGems version ที่อยากรัน บน command line ด้วย underscores:

rails _4.0.0_ new respond_to_4.0 rails _4.1.0_ new respond_to_4.1

Fuzzy Gem Versions

แตส่วนก่อนยังมีปัญหา ไม่อยาก install 4.0.0 จริงๆ อยาก latest version ของ 4.0 พร้อม minor updates

จำได้ไหมว่า latest minor version ของ Rails 4.0 คืออะไร?

มีหลายวิธี lookup แตทำไมต้อง lookup ถ้า RubyGems ทำให้ได้?

gem install rails -v "~>4.0.0"

用 version strings จาก Bundler ได้หมด:

gem install rails -v ">3.1, <4.1"

有用! โดยเฉพาะผมที่เกลียดทำงานซ้ำที่คอมพิวเตอร์ทำได้ดีกว่า

แตคุณไม่ต้อง รู้ ทั้งหมด

ตอนเจอปัญหาไม่รู้มี easy answer แตคุณเดาได้ว่าน่าจะมี

สถานการณ์เหล่านี้แก้เองได้ แต repetitive และ annoying

เวลาเจอ repetitive, annoying task ใน project ที่用เยอะ มันหมายถึง 2 อย่าง:

  1. ใครสร้าง automate ไปแล้ว, หรือ
  2. หลายคนหวังว่า คุณ จะ automate

ก่อนทำ busywork ขุดลึกลงไปนิดหน่อย สืบสวนเล็กน้อย คุ้มเวลา

โพสต์นี้ส่งให้ list เท่านั้น สมัครรับ posts เหล่านี้ทุกวันศุกร์ได้ที่นี่!