إدارة إصدار فلاتر (FVM) هي أداة أساسية لمطوري فلاتر التي تبسط عملية إدارة عدة إصدارات من FSDK فلاتر عبر مشاريع مختلفة. مع تطور فلاتر بسرعة مع التحديثات المتكررة، تصبح الحاجة إلى نظام إدارة إصدارات قوي أمرًا حيويًا للحفاظ على استقرار المشروع. ستوجهك هذه الدليل الشامل خلال كل ما تحتاج لمعرفته حول FVM، من التثبيت إلى سيناريوهات الاستخدام المتقدمة.
أثناء تطوير تطبيقات فلاتر، ستحتاج غالبًا إلى اختبار والتفاعل مع واجهات برمجة التطبيقات (APIs). يعد Apidog بديلاً ممتازًا لـ Postman، حيث يقدم مجموعة شاملة من الميزات لتطوير واختبار واجهات برمجة التطبيقات.
لماذا يجب أن تفكر في Apidog؟
يوفر Apidog تجربة مبسطة مع ميزات تجعل اختبار واجهات برمجة التطبيقات أكثر كفاءة:
- منصة شاملة: توثيق API، التصميم، تصحيح الأخطاء، الاختبار التلقائي، والمحاكاة في أداة واحدة
- واجهة سهلة الاستخدام: تصميم amigable مع قدرات قوية
- خادم محاكاة مدمج: إنشاء واجهات برمجة التطبيقات دون كتابة أي كود

4. ميزات التعاون: التعاون الفوري بين الفرق مع تحديثات متزامنة
5. دعم OpenAPI: استيراد وتصدير مواصفات OpenAPI بسلاسة
6. توثيق تلقائي: إنشاء مستندات API جميلة وتفاعلية تلقائيًا

7. قدرة اختبار متقدمة: إنشاء سيناريوهات اختبار معقدة باستخدام برمجة قوية
لماذا تحتاج إلى إدارة إصدار فلاتر
قبل التعمق في التفاصيل الفنية، دعنا نفهم لماذا تعتبر FVM مهمة لمطوري فلاتر:
- إصدارات فلاتر محددة للمشاريع: قد تتطلب المشاريع المختلفة إصدارات مختلفة من FSDK فلاتر بناءً على توافق الحزمة أو متطلبات العميل.
- استقرار الفريق: يضمن استخدام جميع أعضاء الفريق نفس إصدار فلاتر، مما يقضي على مشاكل "يعمل على جهازي".
- تبديل SDK بسهولة: يمكنك التبديل بسرعة بين القنوات المستقرة، البيتا، أو التطوير دون إعادة تثبيت تستغرق وقتًا طويلاً.
- دعم مشاريع متعددة: العمل على مشاريع متنوعة في نفس الوقت دون تعارض الإصدارات.
- اختبار الإصدارات الجديدة: يمكنك تجربة إصدارات جديدة من فلاتر بأمان دون التأثير على مشاريع الإنتاج المستقرة لديك.
التثبيت
لنبدأ بتثبيت FVM على نظامك. تختلف عملية التثبيت قليلاً حسب نظام التشغيل الذي تستخدمه:
لنظام macOS:
باستخدام Homebrew:
brew tap leoafarias/fvm
brew install fvm
باستخدام سكربت التثبيت:
curl -fsSL https://fvm.app/install.sh | bash
لنظام Windows:
باستخدام Chocolatey:
choco install fvm
أو قم بتنزيل الحزمة المستقلة من مستودع FVM على GitHub.
لنظام Linux:
باستخدام سكربت التثبيت:
curl -fsSL https://fvm.app/install.sh | bash
التفعيل العالمي
بعد تثبيت FVM، قم بتفعيله عالميًا:
dart pub global activate fvm
الأوامر الأساسية لـ FVM والاستخدام
الآن بعد أن قمت بتثبيت FVM، دعنا نستكشف الأوامر الأساسية لإدارة إصدارات FSDK فلاتر.
تثبيت إصدارات فلاتر
لتثبيت إصدار محدد من فلاتر:
fvm install 3.16.0
يمكنك أيضًا تثبيت قناة معينة:
fvm install stable
fvm install beta
fvm install dev
للمستخدمين المتقدمين، يمكنك حتى تثبيتCommit معين باستخدام هاش git:
fvm install fa345b1 # هاش قصير
fvm install 476ad8a917e64e345f05e4147e573e2a42b379f9 # هاش طويل
تعيين إصدار فلاتر لمشروعك
لتعيين إصدار محدد من فلاتر لمشروعك، انتقل إلى دليل مشروعك وتشغيل:
fvm use 3.16.0
تقوم هذه الأوامر بإنشاء مجلد .fvm
في مشروعك وتقوم بإعداد رابط رمزي إلى FSDK فلاتر المحدد.
لاستخدام أحدث إصدار من قناة معينة:
fvm use stable
إذا كنت ترغب في تثبيت القناة على الإصدار الحالي (لمنع التحديثات التلقائية):
fvm use stable --pin
قائمة الإصدارات المثبتة
لرؤية جميع إصدارات فلاتر التي قمت بتثبيتها عبر FVM:
fvm list
بدلاً من ذلك، يمكنك استخدام الاختصار:
fvm ls
عرض إصدارات فلاتر المتاحة
لعرض جميع إصدارات FSDK فلاتر المتاحة:
fvm releases
لتصفية الإصدارات حسب القناة:
fvm releases --channel beta
إزالة إصدار فلاتر
عندما لم تعد بحاجة إلى إصدار محدد من فلاتر:
fvm remove 3.16.0
تعيين إصدار فلاتر عالمي
لتعيين إصدار فلاتر عالمي للاستخدام عبر النظام لديك:
fvm global 3.16.0
لإلغاء ارتباط الإصدار العالمي:
fvm global --unlink
تكوين المشروع
بعد إعداد FVM لمشروعك، ستحتاج إلى تكوين بيئة التطوير الخاصة بك لاستخدام FSDK فلاتر الذي تديره FVM.
تحديث .gitignore
ينشئ FVM رابطًا رمزيًا في .fvm/flutter_sdk
يشير إلى ذاكرة التخزين المؤقت لإصدار فلاتر الذي اخترته. أضف هذا إلى .gitignore
الخاص بك:
.fvm/flutter_sdk
تكوينات IDE
VS Code
قم بإنشاء أو تحديث .vscode/settings.json
في مشروعك مع ما يلي:
{
"dart.flutterSdkPath": ".fvm/flutter_sdk",
// إزالة ملفات .fvm من البحث
"search.exclude": {
"**/.fvm": true
},
// إزالة من مراقبة الملفات
"files.watcherExclude": {
"**/.fvm": true
}
}
Android Studio
- اذهب إلى اللغات والإطارات > فلاتر
- قم بتغيير مسار FSDK فلاتر إلى المسار المطلق لرابطك الرمزي في FVM (مثل
/absolute-project-path/.fvm/flutter_sdk
) - قم بتطبيق التغييرات وأعد تشغيل Android Studio
لتجاهل الدليل الجذري لـ FSDK فلاتر داخل Android Studio، أضف هذا إلى .idea/workspace.xml
:
<component name="VcsManagerConfiguration">
<ignored-roots>
<path value="$PROJECT_DIR$/.fvm/flutter_sdk" />
</ignored-roots>
</component>
XCode
إذا كنت تعمل على iOS، افتح Xcode، اذهب إلى مراحل البناء، وأضف هذا في تشغيل السكربت:
export FLUTTER_ROOT="$PROJECT_DIR/../.fvm/flutter_sdk"
ميزات FVM المتقدمة
نكهات المشروع
يدعم FVM نكهات المشروع، مما يسمح لأجزاء مختلفة من تطبيقك باستخدام إصدارات مختلفة من FSDK فلاتر:
fvm use 3.16.0 --flavor production
fvm use 3.10.0 --flavor development
لتبديل بين النكهات:
fvm use production
fvm use development
لتشغيل أمر فلاتر مع نكهة معينة:
fvm flavor production flutter build
تنفيذ أوامر فلاتر بإصدارات محددة
يسمح لك أمر spawn
بتشغيل أوامر فلاتر مع إصدار محدد من SDK:
fvm spawn 3.16.0 flutter build
fvm spawn 3.10.0 flutter test
تشغيل أوامر مع إصدار فلاتر للمشروع
ينفذ الأمر exec
الأوامر أو السكربتات باستخدام إصدار فلاتر المكون في المشروع:
fvm exec melos bootstrap
fvm exec path/to/script.sh
العمل مع FVM في بيئات CI/CD
للتكامل المستمر، أضف هذه الخطوات إلى سير العمل الخاص بك:
- تثبيت FVM
- تشغيل
fvm install
- استخدم
fvm flutter <command>
لتشغيل أوامر فلاتر
مثال لتطبيق GitHub Actions:
steps:
- uses: actions/checkout@v3
- name: تثبيت FVM
run: |
dart pub global activate fvm
fvm install
- name: البناء والاختبار
run: |
fvm flutter pub get
fvm flutter test
أفضل الممارسات لاستخدام FVM
- استخدم دائمًا FVM لأوامر فلاتر - شغل أوامر فلاتر عبر FVM (مثل
fvm flutter pub get
) لضمان التناسق. - إدراج إصدار FVM في توثيق المشروع - وثق الإصدار المطلوب من فلاتر في README الخاص بك لمساعدة أعضاء الفريق الجدد.
- تثبيت إصدار فلاتر في CI/CD - تأكد من أن خط أنابيب التكامل المستمر يستخدم نفس إصدار فلاتر مثل بيئة التطوير لديك.
- فكر في استخدام
--pin
من أجل الاستقرار - عند استخدام قناة مثل "مستقرة"، فكر في تثبيتها لتجنب التحديثات التلقائية. - تنظيف ذاكرة التخزين المؤقت بانتظام - قم بإزالة إصدارات فلاتر غير المستخدمة بشكل دوري باستخدام
fvm remove
لتوفير مساحة على القرص.
استكشاف المشكلات الشائعة
الإصدار FVM غير معترف به
إذا لم يتعرف IDE الخاص بك على إصدار فلاتر الذي تم تعيينه بواسطة FVM:
- تأكد من أن مسار SDK فلاتر تم تعيينه بشكل صحيح في إعدادات IDE الخاصة بك
- أعد تشغيل IDE بعد تغييرات التكوين
- تحقق من أن الرابط الرمزي تم إنشاؤه بشكل صحيح باستخدام
ls -la .fvm/flutter_sdk
مشكلات الأذونات
إذا واجهت أخطاء في الأذونات:
- على الأنظمة القائمة على Unix، حاول استخدام
sudo fvm <command>
- تحقق من أذونات المجلد لمجلد ذاكرة التخزين المؤقت لـ FVM
مشكلات المسار
إذا لم يتم العثور على أوامر فلاتر بعد استخدام FVM:
- تأكد من أن مسار SDK فلاتر موجود في PATH الخاص بنظامك
- استخدم المسارات المطلقة إلى SDK فلاتر في سكربتاتك
الخاتمة
إدارة إصدار فلاتر (FVM) هي أداة لا غنى عنها لتطوير فلاتر الحديثة. من خلال السماح بالتحكم الدقيق في إصدار FSDK فلاتر عبر مشاريع مختلفة، فإنها تقضي على مشكلات التوافق وتضمن التناسق عبر فرق التطوير.
بدءًا من الأساسيات الخاصة بالتثبيت والتقدم نحو ميزات متقدمة مثل نكهات المشروع، قد غطت هذه الدليل الجوانب الأساسية لاستخدام FVM بفعالية. من خلال دمج FVM في سير عمل تطوير فلاتر الخاص بك، يمكنك تعزيز الإنتاجية والحفاظ على استقرار المشروع والتعاون بسلاسة مع أعضاء الفريق.
تذكر دائمًا تشغيل أوامر فلاتر عبر FVM لضمان تناسق الإصدارات وتجنب السلوكيات غير المتوقعة. مع استخدام FVM بشكل صحيح، يمكنك العمل بثقة على عدة مشاريع فلاتر بمتطلبات SDK مختلفة وتجربة إصدارات فلاتر جديدة بسهولة دون التأثير على كود الإنتاج الخاص بك.
نتمنى لك برمجة فلاتر ممتعة مع FVM!