freeCodeCamp/guide/arabic/ruby/managing-ruby-versions/index.md

60 lines
3.2 KiB
Markdown
Raw Normal View History

---
title: Managing Ruby versions
localeTitle: إدارة إصدارات روبي
---
## تغير روبي بمرور الوقت
كانت روبي في تطور مستمر منذ 1990s ، ومثل العديد من اللغات ، كانت هناك تغييرات في بناء الجملة عبر الإصدارات ، لذا من المهم أن تكون واضحًا حول إصدار روبي الذي تتوقعه شفرتك.
ربما كان التغيير الأكثر وضوحا مع روبي 1.9. سابقا ، كتبنا يغسل مثل هذا:
` { :one => 1, :two => 2, :three => 3 }
`
هذا الاستخدام لمشغل 'hashrocket' ( `=>` ) كان شائعا جدا ، أن Ruby 1.9 قدم اختصارًا:
` { one: 1, two: 2, three: 3 }
`
تعمل هذه التعليمة البرمجية القديمة على أي إصدار ، ولكن سيتم تشغيل الجملة الأحدث فقط على روبي 1.9+.
## كيف يسبب هذا المشاكل؟
على سبيل المثال ، قد تكون قررت استخدام Gem الذي يعتمد داخليًا عليه ميزات روبي 1.9 هذا يعني أن مشروعك الآن يعتمد أيضًا على روبي 1.9 الميزات.
إذا لم تحدد إصدار روبي الذي تحتاجه للمشروع ، فيمكن أن يكون الأمر كذلك مربكة عندما يعمل الكود على جهاز واحد ، ولكن ليس آخر.
كما هو الحال مع معظم اللغات ، يعتبر من الممارسات الجيدة تحديد إصدار روبي التي يتوقعها رمزك. هذا يجعل الأمر أسهل بكثير لإدارة متعددة مشاريع على جهاز التنمية الخاص بك ، كل توقع إصدار مختلف من روبي.
## كيف يمكنني تحديد إصدار روبي؟
هناك نوعان من الأدوات التي تحظى بشعبية كبيرة ، لكن كلاهما وافق على ذلك مشاركة ملف مشترك. العديد من مشاريع Ruby (أو Rails) ستشمل بسيطة ملف `.ruby-version` ، الذي يحدد ببساطة رقم إصدار ، على _سبيل المثال_ :
`2.4.2
`
الأدوات الشائعة لمساعدتك في إدارة إصدار روبي هي:
* [روبي إصدار مدير (RVM)](https://rvm.io)
* [rbenv](https://github.com/rbenv/rbenv)
دعونا ننظر في RVM.
### باستخدام RVM
عادةً ما يتم تثبيت RVM ( [رابط](https://rvm.io) ) على Linux أو Unix أو MacOS الجهاز ، ومريحة للغاية لأنه خطاف في `cd` ( `c` hange `d` irectory) الأمر عند الانتقال إلى مشروع جديد ، تتم قراءة `.ruby-version` الخاص بك تلقائيا ، وأنت تحول تلقائيا إلى الإصدار الصحيح من روبي قبل البدء في العمل.
على سبيل المثال ، قد يكون لديك هذا التسلسل:
`% cd ~/projects/older-project
% ruby --version
ruby 2.3.5p376 (2017-09-14 revision 59905) [x86_64-darwin16]
% cd ~/projects/newer-project
% ruby --version
ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin16]
`
(هذه الأمثلة من جهاز MacOS)