bundle-config - ตั้งค่าตัวเลือกการกำหนดค่า Bundler
bundle config list
bundle config [get] NAME
bundle config [set] NAME VALUE
bundle config unset NAME
คำสั่งนี้อนุญาตให้คุณโต้ตอบกับระบบการกำหนดค่าของ Bundler
Bundler โหลดการตั้งค่าการกำหนดค่าตามลำดับนี้:
การกำหนดค่าในเครื่อง (
ตัวแปรด้านสิ่งแวดล้อม (ENV)
การกำหนดค่าส่วนกลาง (~/.bundle/config)
การกำหนดค่าเริ่มต้นของ Bundler
กำลังดำเนินการ
bundle config list
จะพิมพ์รายการการกำหนดค่าบันเดิลทั้งหมดสำหรับบันเดิลปัจจุบัน และตำแหน่งที่ตั้งคอนฟิกูเรชันนั้น
กำลังดำเนินการ
bundle config get <name>
จะพิมพ์ค่าของการกำหนดค่านั้นและตำแหน่งที่ตั้งค่าไว้
กำลังดำเนินการ
bundle config set <name> <value>
ค่าเริ่มต้นคือการตั้งค่าการกำหนดค่า ภายในเครื่อง หากดำเนินการจากภายในแอปพลิเคชันภายในเครื่อง มิฉะนั้นจะเป็นการตั้งค่าการกำหนดค่าส่วนกลาง ดูตัวเลือก --local และ --global ด้านล่าง
กำลังดำเนินการ
bundle config set --local <name> <value>
จะตั้งค่าคอนฟิกูเรชันนั้นในไดเร็กทอรีสำหรับแอ็พพลิเคชันภายในเครื่อง การกำหนดค่าจะถูกจัดเก็บไว้ใน
กำลังดำเนินการ
bundle config set --global <name> <value>
จะตั้งค่าคอนฟิกูเรชันนั้นเป็นค่าที่ระบุสำหรับบันเดิลทั้งหมดที่ดำเนินการในฐานะผู้ใช้ปัจจุบัน การกำหนดค่าจะถูกเก็บไว้ใน ~/.bundle/config หากตั้งค่า ชื่อ ไว้แล้ว ชื่อ จะถูกแทนที่และผู้ใช้จะได้รับคำเตือน
กำลังดำเนินการ
bundle config unset <name>
จะลบการกำหนดค่าทั้งในโลคัลและโกลบอลซอร์ส
กำลังดำเนินการ
bundle config unset --global <name>
จะลบการกำหนดค่าจากการกำหนดค่าผู้ใช้เท่านั้น
กำลังดำเนินการ
bundle config unset --local <name>
จะลบการกำหนดค่าออกจากแอปพลิเคชันในเครื่องเท่านั้น
การดำเนินการกับชุดตัวแปรสภาพแวดล้อม BUNDLE_IGNORE_CONFIG จะทำให้ละเว้นการกำหนดค่าทั้งหมด
ค่าสถานะที่ส่งผ่านไปยัง การติดตั้งแบบรวม หรือรันไทม์ของ Bundler เช่น --path foo หรือ -- โดยไม่ต้องใช้งานจริง จะถูกจดจำระหว่างคำสั่งและบันทึกลงใน การกำหนดค่าแอปพลิเคชันในเครื่องของคุณ (โดยปกติคือ ./.bundle/config)
อย่างไรก็ตาม จะมีการเปลี่ยนแปลงใน Bundler 3 ดังนั้นจึงเป็นการดีกว่าที่จะไม่พึ่งพาลักษณะการทำงานนี้ หากจำตัวเลือกเหล่านี้ได้ จะเป็นการดีกว่าหากตั้งค่าโดยใช้ bundle config (เช่น bundle config set --local path foo)
ตัวเลือกที่สามารถกำหนดค่าได้คือ:
สร้างไดเร็กทอรี (ค่าเริ่มต้นคือ ~/bin) และวางไฟล์ปฏิบัติการใดๆ จากอัญมณีที่นั่น ไฟล์เรียกทำงานเหล่านี้ทำงานในบริบทของ Bundler หากใช้ คุณอาจเพิ่มไดเร็กทอรีนี้ในตัวแปร PATH ของสภาพแวดล้อม ตัวอย่างเช่น หากเจ็ม rails มาพร้อมกับไฟล์ปฏิบัติการ rails แฟล็กนี้จะสร้างไฟล์ปฏิบัติการ bin/rails ที่ทำให้มั่นใจได้ว่าการอ้างอิงทั้งหมดจะ ได้รับการแก้ไขโดยใช้อัญมณีที่แถมมา
ในโหมดการปรับใช้ Bundler จะ 'เปิดตัว' บันเดิลสำหรับการใช้งาน การผลิต โปรดตรวจสอบอย่างละเอียดหากคุณต้องการเปิดใช้งานตัวเลือกนี้ในสภาพแวดล้อม การพัฒนา หรือ การทดสอบ
รายการกลุ่มที่คั่นด้วยช่องว่างเพื่อติดตั้งเฉพาะอัญมณีของกลุ่มที่ระบุ
ตำแหน่งที่จะติดตั้งอัญมณีที่กำหนด ค่าเริ่มต้นนี้เป็นการตั้งค่าของ Rubygems Bundler แชร์ตำแหน่งนี้กับ Rubygems gem install ... จะมี gem ติดตั้งอยู่ที่นั่นด้วย ดังนั้น อัญมณีที่ติดตั้งโดยไม่มีการตั้งค่า --path ... จะแสดงโดยการเรียก รายการอัญมณี ดังนั้น อัญมณีที่ติดตั้งในตำแหน่งอื่นจะไม่ปรากฏในรายการ
รายการที่คั่นด้วยช่องว่างของกลุ่มที่อ้างถึงอัญมณีที่จะข้ามระหว่างการติดตั้ง
รายการของกลุ่ม ไม่บังคับ ที่คั่นด้วยช่องว่างซึ่งอ้างอิงอัญมณีที่จะรวมระหว่างการติดตั้ง
คุณสามารถใช้ bundle config เพื่อให้ Bundler ตั้งค่าสถานะเพื่อส่งไปยังโปรแกรมติดตั้ง gem ทุกครั้งที่ Bundler พยายามติดตั้ง gem หนึ่งๆ
ตัวอย่างที่พบบ่อยมากคือ mysql gem ต้องการให้ผู้ใช้ Snow Leopard ส่งการตั้งค่าสถานะไปยัง gem install เพื่อระบุตำแหน่งที่จะค้นหาไฟล์ปฏิบัติการ mysql_config
gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_configเนื่องจากตำแหน่งเฉพาะของไฟล์เรียกทำงานนั้นสามารถเปลี่ยนจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่งได้ คุณจึงสามารถระบุแฟล็กเหล่านี้เป็นรายเครื่องได้
bundle config set --global build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_configหลังจากเรียกใช้คำสั่งนี้ ทุกครั้งที่ Bundler ต้องการติดตั้งอัญมณี mysql ก็จะส่งผ่านแฟล็กที่คุณระบุ
คีย์การกำหนดค่าใน Bundler มีสองรูปแบบ: รูปแบบมาตรฐานและรูปแบบตัวแปรสภาพแวดล้อม
ตัวอย่างเช่น การส่งผ่านแฟล็ก --ไม่มี ไปยังบันเดิล install(1) bundle-install.1.html ป้องกัน Bundler จากการติดตั้งบางกลุ่มที่ระบุใน Gemfile(5) Bundler ยืนยันค่านี้ใน app/.bundle/config เพื่อให้การเรียกไปยัง Bundler.setup ไม่พยายามค้นหาอัญมณีจาก Gemfile ที่คุณ ไม่ได้ติดตั้ง นอกจากนี้ การเรียกใช้บันเดิล install(1) bundle-install.1.html ที่ตามมา จำการตั้งค่านี้และข้ามกลุ่มเหล่านั้น
รูปแบบมาตรฐานของการกำหนดค่านี้คือ "ไม่มี" หากต้องการแปลงรูปแบบมาตรฐานเป็นรูปแบบตัวแปรสภาพแวดล้อม ให้พิมพ์เป็นตัวพิมพ์ใหญ่และเพิ่ม BUNDLE_ ข้างหน้า รูปแบบตัวแปรสภาพแวดล้อมของ "ไม่มี" คือ BUNDLE_WITHOUT
จุดใดๆ ในคีย์การกำหนดค่าต้องแทนที่ด้วยเครื่องหมายขีดล่างสองตัวเมื่อตั้งค่าผ่านตัวแปรสภาพแวดล้อม คีย์การกำหนดค่า local.rack กลายเป็นตัวแปรสภาพแวดล้อม BUNDLE_LOCAL__RACK
ต่อไปนี้เป็นรายการคีย์การกำหนดค่าทั้งหมดและวัตถุประสงค์ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการดำเนินการได้ใน Bundle install(1) bundle-install.1.html
เมื่ออยู่ในโหมดปรับใช้ อนุญาตให้เปลี่ยนข้อมูลประจำตัวเป็นแหล่งที่มาของอัญมณี เช่น https://some.host.com/gems/path/ -> https://user_name:password@some.host.com/gems/path
อนุญาตให้ Bundler ใช้ข้อมูลที่แคชเมื่อทำการติดตั้งโดยไม่ต้องเข้าถึงเครือข่าย
เรียกใช้ การล้างบันเดิล โดยอัตโนมัติหลังจากติดตั้งเมื่อไม่ได้ตั้งค่าพาธที่ชัดเจนและไม่ได้ติดตั้ง Bundler ลงในอัญมณีระบบ
เรียกใช้ การติดตั้งชุดรวม โดยอัตโนมัติเมื่ออัญมณีหายไป
ติดตั้งไฟล์เรียกทำงานจากอัญมณีในบันเดิลไปยังไดเร็กทอรีที่ระบุ ค่าเริ่มต้นเป็น เท็จ
แคชอัญมณีทั้งหมด รวมถึงเส้นทางและอัญมณีคอมไพล์ จำเป็นต้องกำหนดค่าอย่างชัดเจนใน Bundler 1 และ Bundler 2 แต่จะเป็นค่าเริ่มต้นใน Bundler 3
อัญมณีแคชสำหรับทุกแพลตฟอร์ม
ไดเร็กทอรีที่บันเดิลจะวางเจมที่แคชไว้เมื่อเรียกใช้ แพ็กเกจบันเดิล และบันเดิลนั้นจะมองหาเมื่อติดตั้งเจม ค่าเริ่มต้นคือ ผู้ให้บริการ/แคช
กำหนดว่า Bundler ควรเรียกใช้ Bundle Clean โดยอัตโนมัติหลังจาก Bundle ติดตั้ง หรือไม่
คอนโซลที่ รวมคอนโซล เริ่มทำงาน ค่าเริ่มต้นคือ irb
กำหนดว่า bundle install ที่ไม่มีอาร์กิวเมนต์ --path ที่ชัดเจนจะมีค่าเริ่มต้นเป็นการติดตั้ง gems ใน .bundle หรือไม่
ไม่อนุญาตให้เปลี่ยนแปลง Gemfile เมื่อ Gemfile มีการเปลี่ยนแปลงและไฟล์ล็อกไม่ได้รับการอัปเดต การเรียกใช้คำสั่ง Bundler จะถูกบล็อก
อนุญาตให้ติดตั้งอัญมณีได้ แม้ว่าจะไม่ตรงกับผลรวมตรวจสอบที่ RubyGems ให้มาก็ตาม
หยุด Bundler จากการใช้ โหลด เพื่อเปิดใช้งานการดำเนินการระหว่างดำเนินการใน bundle exec
อนุญาตให้ Bundler ใช้การแทนที่ git ในเครื่องโดยไม่ต้องระบุสาขาใน Gemfile
อนุญาตให้ Bundler ใช้การแทนที่ git ในเครื่องโดยไม่ต้องตรวจสอบว่ามีการแก้ไขในไฟล์ล็อกอยู่ในที่เก็บหรือไม่
หยุด Bundler ไม่ให้เข้าถึงอัญมณีที่ติดตั้งในตำแหน่งปกติของ RubyGems
หยุด Bundler ไม่ให้ตรวจสอบว่ามี Bundler เวอร์ชันใหม่บน rubygems.org หรือไม่
ไม่ต้องสนใจแพลตฟอร์มของเครื่องปัจจุบันและติดตั้งอัญมณีแพลตฟอร์ม ทับทิม เท่านั้น ด้วยเหตุนี้ อัญมณีที่มีส่วนขยายแบบเนทีฟจะถูกรวบรวมจากแหล่งที่มา
ไม่อนุญาตให้เปลี่ยนแปลง Gemfile เมื่อ Gemfile มีการเปลี่ยนแปลงและไฟล์ล็อกไม่ได้รับการอัปเดต การเรียกใช้คำสั่ง Bundler จะถูกบล็อก ค่าเริ่มต้นเป็น จริง เมื่อใช้ --การปรับใช้
ตั้งชื่อผู้ใช้หรือองค์กร GitHub ที่จะใช้ในไฟล์ README เมื่อคุณสร้าง gem ใหม่ผ่านคำสั่ง bundle gem สามารถลบล้างได้โดยส่งแฟล็ก --github-username ที่ชัดเจนไปยัง bundle gem
ตั้งค่าพารามิเตอร์ --key สำหรับ gem push เมื่อใช้คำสั่ง rake release กับเซิร์ฟเวอร์ gemstash ส่วนตัว
ชื่อของไฟล์ที่ Bundler ควรใช้เป็น Gemfile ตำแหน่งของไฟล์นี้ยังตั้งค่ารูทของโปรเจ็กต์ ซึ่งใช้เพื่อแก้ไขพาธสัมพัทธ์ใน Gemfile เหนือสิ่งอื่นใด โดยค่าเริ่มต้น Bundler จะค้นหาจากไดเร็กทอรีการทำงานปัจจุบันจนกว่าจะพบ Gemfile
Bundler ควรแคชอัญมณีทั้งหมดทั่วโลกหรือไม่ แทนที่จะเก็บไว้ในเครื่องเพื่อติดตั้ง Ruby ที่ติดตั้ง
เมื่อตั้งค่าแล้ว จะไม่มีการพิมพ์คำขอเงินทุน
เมื่อตั้งค่าแล้ว จะไม่มีการพิมพ์ข้อความหลังการติดตั้ง หากต้องการปิดเสียงเจ็มเดียว ให้ใช้เครื่องหมายจุด เช่น ignore_messages.httparty true
สร้าง gems.rb แทน Gemfile เมื่อเรียกใช้ bundle init
จำนวนของอัญมณี Bundler ที่สามารถติดตั้งแบบขนานได้ ค่าดีฟอลต์คือจำนวนโปรเซสเซอร์ที่มีอยู่
ตกลงว่า แพ็กเกจบันเดิล ควรข้ามการติดตั้งอัญมณีหรือไม่
Bundler ควรปล่อยให้อัญมณีที่ล้าสมัยไม่ถูกตัดแต่งเมื่อทำการแคชหรือไม่
รายการกลุ่มที่คั่นด้วยช่องว่างเพื่อติดตั้งเฉพาะอัญมณีของกลุ่มที่ระบุ
ตำแหน่งบนดิสก์ที่อัญมณีทั้งหมดในกลุ่มของคุณจะอยู่โดยไม่คำนึงถึงค่า $GEM_HOME หรือ $GEM_PATH ไม่พบ Bundle gems ในตำแหน่งนี้จะถูกติดตั้งโดย การติดตั้ง Bundle ค่าเริ่มต้นคือ Gem.dir เมื่อใช้ --deployment ค่าเริ่มต้นจะเป็น vendor/bundle
Bundler จะติดตั้งอัญมณีในเส้นทางเริ่มต้นของระบบหรือไม่ (Gem.dir)
ทำให้ --path สัมพันธ์กับ CWD แทนที่จะเป็น Gemfile
เปิดใช้งานระบบปลั๊กอินทดลองของ Bundler
ต้องการอัปเดตเป็นเวอร์ชันแพตช์ถัดไปเท่านั้นในระหว่างการอัปเดต ทำให้การเรียก bundle update เทียบเท่ากับ bundler update --patch
พิมพ์เฉพาะหมายเลขเวอร์ชันจาก bundler --version
จำนวนการเปลี่ยนเส้นทางที่อนุญาตสำหรับคำขอเครือข่าย ค่าเริ่มต้นคือ 5
จำนวนครั้งในการลองคำขอเครือข่ายที่ล้มเหลวอีกครั้ง ค่าเริ่มต้นคือ 3
ให้ Bundler.setup ทำให้เมธอด Kernel#gem เป็นแบบสาธารณะ แม้ว่า RubyGems จะประกาศว่าเป็นแบบส่วนตัวก็ตาม
ชื่อโปรแกรมที่ควรเรียกใช้สำหรับ binstubs ที่สร้างขึ้น ค่าเริ่มต้นเป็นชื่อการติดตั้ง ruby ที่ใช้สร้าง binstub
กำหนดว่า Bundler ควรปิดเสียงคำเตือนการเลิกใช้งานสำหรับลักษณะการทำงานที่จะเปลี่ยนแปลงในเวอร์ชันหลักถัดไปหรือไม่
ปิดเสียงคำเตือน Bundler พิมพ์เมื่อติดตั้งอัญมณีเป็นรูท
พาธไปยังไฟล์หรือโฟลเดอร์ใบรับรอง CA ที่กำหนดซึ่งมีใบรับรองหลายรายการสำหรับ CA ที่เชื่อถือได้ในรูปแบบ PEM
พาธไปยังไฟล์ที่กำหนดซึ่งมีใบรับรองไคลเอ็นต์ X.509 และคีย์ในรูปแบบ PEM
Bundler โหมดการตรวจสอบ SSL ใช้เมื่อส่งคำขอ HTTPS ค่าเริ่มต้นเพื่อตรวจสอบเพียร์
หลีกเลี่ยงการพิมพ์ข้อความ ใช้ ... ระหว่างการติดตั้งเมื่อเวอร์ชันของอัญมณีไม่เปลี่ยนแปลง
ตำแหน่งที่ RubyGems ติดตั้ง binstubs ค่าเริ่มต้นคือ Gem.bindir
วินาทีที่อนุญาตก่อนหมดเวลาสำหรับคำขอเครือข่าย ค่าเริ่มต้นคือ 10
กำหนดให้ส่ง --ทั้งหมด ไปยัง การอัปเดตชุดรวม เมื่อทุกอย่างควรอัปเดต และไม่อนุญาตให้ส่งตัวเลือกใด ๆ เพื่อ อัปเดตชุดรวม
Bundler ส่วนตัวแทนผู้ใช้ที่กำหนดเองรวมอยู่ในคำขอ API
: รายการแยกกลุ่มที่ควรติดตั้ง gems bundler
รายการ : ของกลุ่มที่แยกกลุ่มซึ่งไม่ควรติดตั้ง gems bundler
โดยทั่วไป คุณควรตั้งค่าเหล่านี้ต่อแอปพลิเคชันโดยใช้แฟล็กที่ใช้ได้กับการติดตั้งบันเดิล(1) bundle-install.1.html หรือบันเดิลแคช(1) บันเดิลแคช คำสั่ง 1.html
คุณสามารถตั้งค่าส่วนกลางได้โดยใช้ตัวแปรสภาพแวดล้อมหรือ การกำหนดค่าบันเดิล ขึ้นอยู่กับว่าคุณต้องการการตั้งค่าแบบใด หากคุณใช้ทั้งสองอย่าง ตัวแปรสภาพแวดล้อมจะใช้การตั้งค่ามากกว่าการตั้งค่าส่วนกลาง
Bundler ยังช่วยให้คุณสามารถทำงานกับที่เก็บ git ในเครื่องแทนการใช้เวอร์ชันระยะไกล ซึ่งสามารถทำได้โดยการตั้งค่าการแทนที่ในเครื่อง:
bundle config set --local local.GEM_NAME /path/to/local/git/repositoryตัวอย่างเช่น ในการใช้ที่เก็บแร็คในเครื่อง นักพัฒนาสามารถเรียก:
bundle config set --local local.rack ~/Work/git/rackตอนนี้แทนที่จะตรวจสอบที่เก็บ git ระยะไกล ระบบจะใช้การแทนที่ในเครื่อง เช่นเดียวกับแหล่งที่มาของเส้นทาง ทุกครั้งที่ที่เก็บ git ในเครื่องเปลี่ยน Bundler จะรับการเปลี่ยนแปลงโดยอัตโนมัติ ซึ่งหมายความว่าการกระทำใน repo git ในเครื่องจะอัปเดตการแก้ไขใน Gemfile.lock เป็นการแก้ไข repo git ในเครื่อง สิ่งนี้ต้องการความสนใจเช่นเดียวกับโมดูลย่อยของคอมไพล์ ก่อนที่จะพุชไปที่รีโมต คุณต้องแน่ใจว่าพุชการแทนที่ภายในเครื่องแล้ว มิฉะนั้น คุณอาจชี้ไปที่การคอมมิตที่มีเฉพาะในเครื่องโลคัลของคุณ คุณจะต้อง CGI ออกจากชื่อผู้ใช้และรหัสผ่านของคุณด้วย
Bundler ทำการตรวจสอบหลายอย่างเพื่อให้แน่ใจว่านักพัฒนาจะไม่ทำงานกับข้อมูลอ้างอิงที่ไม่ถูกต้อง โดยเฉพาะอย่างยิ่ง เราบังคับให้ผู้พัฒนาระบุสาขาใน Gemfile เพื่อใช้คุณลักษณะนี้ หากสาขาที่ระบุใน Gemfile และสาขาปัจจุบันในที่เก็บ git ในเครื่องไม่ตรงกัน Bundler จะยกเลิก สิ่งนี้ทำให้มั่นใจได้ว่านักพัฒนาซอฟต์แวร์ทำงานกับสาขาที่ถูกต้องเสมอ และป้องกันการล็อกไปยังสาขาอื่นโดยไม่ตั้งใจ
สุดท้าย Bundler ยังรับรองว่าการแก้ไขปัจจุบันใน Gemfile.lock มีอยู่ในที่เก็บ git ในเครื่อง ด้วยการทำเช่นนี้ Bundler จะบังคับให้คุณดึงข้อมูลการเปลี่ยนแปลงล่าสุดในรีโมท
Bundler รองรับแหล่งอัญมณีที่เอาชนะด้วยมิเรอร์ สิ่งนี้ทำให้คุณสามารถกำหนดค่า rubygems.org เป็นแหล่งอัญมณีใน Gemfile ของคุณในขณะที่ยังคงใช้มิเรอร์เพื่อดึงข้อมูลอัญมณี
bundle config set --global mirror.SOURCE_URL MIRROR_URLตัวอย่างเช่น หากต้องการใช้มิเรอร์ของ https://rubygems.org ที่โฮสต์ที่ https://example.org:
bundle config set --global mirror.https://rubygems.org https://example.orgมิเรอร์แต่ละตัวยังมีการตั้งค่าการหมดเวลาทางเลือกอีกด้วย หากมิเรอร์ไม่ตอบสนองภายในระยะหมดเวลาทางเลือก Bundler จะพยายามใช้เซิร์ฟเวอร์ดั้งเดิมแทนมิเรอร์
bundle config set --global mirror.SOURCE_URL.fallback_timeout TIMEOUTตัวอย่างเช่น หากต้องการถอยกลับไปที่ rubygems.org หลังจากผ่านไป 3 วินาที:
bundle config set --global mirror.https://rubygems.org.fallback_timeout 3ระยะหมดเวลาทางเลือกเริ่มต้นคือ 0.1 วินาที แต่การตั้งค่าสามารถยอมรับได้เฉพาะวินาทีเท่านั้น (เช่น 1, 15 หรือ 30)
Bundler ช่วยให้คุณกำหนดค่าข้อมูลประจำตัวสำหรับแหล่งอัญมณีใด ๆ ซึ่งช่วยให้คุณหลีกเลี่ยงการใส่ความลับลงใน Gemfile ของคุณ
bundle config set --global SOURCE_HOSTNAME USERNAME:PASSWORDตัวอย่างเช่น หากต้องการบันทึกข้อมูลประจำตัวของผู้ใช้ claudette สำหรับแหล่งที่มาของอัญมณีที่ gems.longerous.com คุณต้องเรียกใช้:
bundle config set --global gems.longerous.com claudette:s00pers3kritหรือคุณสามารถตั้งค่าข้อมูลรับรองเป็นตัวแปรสภาพแวดล้อมดังนี้:
export BUNDLE_GEMS__LONGEROUS__COM="claudette:s00pers3krit"สำหรับอัญมณีที่มีแหล่งคอมไพล์ที่มี HTTP(S) URL คุณสามารถระบุข้อมูลประจำตัวได้ดังนี้:
bundle config set --global https://github.com/rubygems/rubygems.git username:passwordหรือคุณสามารถตั้งค่าข้อมูลประจำตัวเป็นตัวแปรสภาพแวดล้อมดังนี้:
export BUNDLE_GITHUB__COM=username:passwordสิ่งนี้มีประโยชน์อย่างยิ่งสำหรับที่เก็บส่วนตัวบนโฮสต์เช่น GitHub ซึ่งคุณสามารถใช้โทเค็น OAuth ส่วนตัวได้:
export BUNDLE_GITHUB__COM=abcd0123generatedtoken:x-oauth-basicโปรดทราบว่าข้อมูลประจำตัวที่กำหนดค่าไว้จะถูกแก้ไขโดยคำสั่งที่ให้ข้อมูล เช่น bundle config list หรือ bundle config get เว้นแต่คุณจะใช้แฟล็ก --parseable . เพื่อหลีกเลี่ยงไม่ให้ข้อมูลประจำตัวรั่วไหลโดยไม่ได้ตั้งใจเมื่อเอาต์พุตของ Bundler คัดลอกและวาง
โปรดทราบว่าเพื่อรับประกันการแมปที่เหมาะสมระหว่างชื่อตัวแปรสภาพแวดล้อมที่ถูกต้องและชื่อโฮสต์ที่ถูกต้อง Bundler จะทำการแปลงดังต่อไปนี้:
อักขระเหล่านี้ในชื่อโฮสต์จะถูกจับคู่กับเส้นประคู่ (__) ในตัวแปรสภาพแวดล้อมที่เกี่ยวข้อง
ซึ่งหมายความว่าหากคุณมีเซิร์ฟเวอร์อัญมณีชื่อ my.gem-host.com คุณจะต้องใช้ตัวแปร BUNDLE_MY__GEM___HOST__COM เพื่อกำหนดค่าข้อมูลประจำตัวผ่าน ENV
ไดเร็กทอรี home, config, cache และ plugin ของ Bundler สามารถกำหนดค่าผ่านตัวแปรสภาพแวดล้อมได้ ตำแหน่งเริ่มต้นสำหรับโฮมไดเร็กทอรีของ Bundler คือ ~/.bundle ซึ่งไดเร็กทอรีทั้งหมดสืบทอดมาจากค่าเริ่มต้น ต่อไปนี้สรุปตัวแปรสภาพแวดล้อมที่มีอยู่และค่าเริ่มต้น
BUNDLE_USER_HOME : $HOME/.bundle
BUNDLE_USER_CACHE : $BUNDLE_USER_HOME/cache
BUNDLE_USER_CONFIG : $BUNDLE_USER_HOME/config
BUNDLE_USER_PLUGIN : $BUNDLE_USER_HOME/plugin