تخطَّ إلى المحتوى

ورقة مرجعية mise - مدير بيئة التطوير

ورقة مرجعية mise - مدير بيئة التطوير

Section titled “ورقة مرجعية mise - مدير بيئة التطوير”

مدير بيئة تطوير متعدد اللغات يحل محل asdf وnvm وpyenv وdirenv وmake في أداة واحدة. إدارة إصدارات الأدوات ومتغيرات البيئة ومهام المشروع — كل ذلك من ملف تكوين واحد.

المنصةالأمر
macOS/Linux (موصى به)curl https://mise.run | sh
macOS (Homebrew)brew install mise
Arch Linuxsudo pacman -S mise
Ubuntu/Debian (apt)sudo apt install mise
Fedora/RHELsudo dnf install mise
Windows (Scoop)scoop install mise
Cargo (All platforms)cargo install mise
Nixnix-env -iA nixpkgs.mise
Dockerdocker run jdx/mise
الشِلملف التكوينالأمر المطلوب إضافته
Bash~/.bashrceval "$(mise activate bash)"
Zsh~/.zshrceval "$(mise activate zsh)"
Fish~/.config/fish/config.fishmise activate fish | source
PowerShellProfilemise activate pwsh | Out-String | Invoke-Expression

تثبيت واستخدام الأدوات

Section titled “تثبيت واستخدام الأدوات”
الأمرالوصف
mise use node@22تثبيت Node.js 22 وتعيينه للدليل الحالي
mise use python@3.12تثبيت Python 3.12 للدليل الحالي
mise use --global node@22تعيين Node.js 22 كافتراضي عام
mise use node@ltsاستخدام أحدث إصدار LTS
mise use node@latestاستخدام أحدث إصدار مطلق
mise installتثبيت جميع الأدوات من mise.toml / .tool-versions
mise install nodeتثبيت الإصدار المُكوَّن من Node.js
mise install node@20تثبيت إصدار محدد
mise uninstall node@18إزالة إصدار محدد
mise upgrade nodeترقية Node.js إلى أحدث إصدار مطابق
mise upgradeترقية جميع الأدوات
mise lsقائمة جميع إصدارات الأدوات المثبتة
mise ls nodeقائمة إصدارات Node.js المثبتة
mise ls-remote nodeإظهار جميع إصدارات Node.js المتاحة
mise which nodeإظهار مسار الملف التنفيذي النشط node
mise where node@22إظهار دليل التثبيت لـ Node.js 22
mise search pythonالبحث عن الأدوات المتاحة المطابقة لـ “python”
mise exec node@20 -- node -vتشغيل أمر مع إصدار أداة محدد

الأدوات المدعومة (قائمة جزئية)

Section titled “الأدوات المدعومة (قائمة جزئية)”

Node.js، Python، Ruby، Go، Rust، Java، Erlang، Elixir، PHP، Terraform، kubectl، Helm، Deno، Bun، والمئات غيرها عبر الإضافات.

الأمرالوصف
mise set MY_VAR=valueتعيين متغير بيئة للدليل الحالي
mise set --global API_KEY=xyzتعيين متغير بيئة عام
mise unset MY_VARإزالة متغير بيئة
mise envإظهار جميع متغيرات البيئة النشطة
mise env --jsonإظهار متغيرات البيئة كـ JSON
الأمرالوصف
mise run buildتشغيل مهمة “build”
mise run testتشغيل مهمة “test”
mise run lint -- --fixتشغيل المهمة مع وسائط إضافية
mise tasks lsقائمة جميع المهام المتاحة
mise tasks info buildإظهار تفاصيل حول مهمة “build”
mise tasks add build "npm run build"إنشاء مهمة جديدة
mise tasks edit buildتحرير مهمة في المحرر
mise tasks depsإظهار شجرة تبعيات المهام
mise tasks validateالتحقق من صحة تكوين المهام

mise.toml (أساسي — لكل مشروع)

Section titled “mise.toml (أساسي — لكل مشروع)”
# .mise.toml أو mise.toml في جذر المشروع
[tools]
node = "22"               # إصدار رئيسي دقيق
python = "3.12"            # إصدار ثانوي دقيق
terraform = "latest"       # الأحدث دائمًا
ruby = "3.3.0"             # إصدار التصحيح الدقيق
go = "prefix:1.22"         # أحدث 1.22.x

[env]
NODE_ENV = "development"
DATABASE_URL = "postgres://localhost/mydb"
# التحميل من ملف .env
_.file = ".env"

[tasks.build]
description = "Build the project"
run = "npm run build"
depends = ["install"]      # تشغيل 'install' أولاً

[tasks.install]
description = "Install dependencies"
run = "npm install"

[tasks.test]
description = "Run test suite"
run = "npm test"
depends = ["build"]

[tasks.dev]
description = "Start dev server"
run = "npm run dev"
# .tool-versions — متوافق مع asdf
node 22.0.0
python 3.12.1
ruby 3.3.0

تسلسل التكوين الهرمي (الأكثر تحديدًا يفوز)

Section titled “تسلسل التكوين الهرمي (الأكثر تحديدًا يفوز)”
  1. mise.toml في الدليل الحالي
  2. mise.toml في الأدلة الأبوية (السير للأعلى)
  3. ~/.config/mise/config.toml (عام)

التشخيص والأدوات المساعدة

Section titled “التشخيص والأدوات المساعدة”
الأمرالوصف
mise doctorتشخيص مشاكل التكوين
mise versionإظهار إصدار mise
mise self-updateتحديث mise نفسه
mise cache clearمسح ذاكرات التخزين المؤقت للتنزيل والبناء
mise reshimإعادة إنشاء ملفات shim
mise deactivateإلغاء تنشيط mise في الشِل الحالي
mise lockإنشاء ملف قفل لتثبيتات قابلة للتكرار
mise config lsقائمة جميع ملفات التكوين النشطة
الأمرالوصف
mise plugins lsقائمة الإضافات المثبتة
mise plugins install terraformتثبيت إضافة
mise plugins updateتحديث جميع الإضافات
mise plugins update terraformتحديث إضافة محددة
mise backends lsقائمة الخلفيات المتاحة للأدوات
# إزالة nvm من تكوين الشِل، ثم:
mise use --global node@$(node -v | sed 's/v//')
# mise يقرأ ملفات .tool-versions أصليًا
# فقط ثبت mise وفعله — ملفات .tool-versions الموجودة تعمل
# نقل متغيرات البيئة إلى قسم [env] في mise.toml
# mise يتعامل مع متغيرات البيئة المحددة بالدليل أصليًا
# إعداد مشروع جديد
cd ~/projects/my-app
mise use node@22 python@3.12
mise set NODE_ENV=development

# استنساخ وتهيئة مشروع
git clone repo && cd repo
mise install              # تثبيت جميع الأدوات من mise.toml

# تشغيل مهام المشروع
mise run dev              # بدء خادم التطوير
mise run test             # تشغيل الاختبارات
mise run build            # البناء للإنتاج

# التحقق من إصدارات الأدوات عبر المشاريع
mise ls

# الحفاظ على الأدوات محدثة
mise upgrade              # ترقية جميع الأدوات إلى الأحدث
الميزةasdfnvmdirenvmise
متعدد اللغاتنعمNode فقطلانعم
متغيرات البيئةلالانعمنعم
مشغل المهاملالالانعم
ملف التكوين.tool-versions.nvmrc.envrcmise.toml + .tool-versions
السرعةبطيء (shell)متوسطسريعسريع (Rust)
Shimsنعمنعملانعم