مرجع واجهة سطر الأوامر في Firebase

توفّر واجهة سطر الأوامر Firebase(GitHub) مجموعة متنوعة من الأدوات لإدارة مشاريع Firebase وعرضها ونشرها.

قبل استخدام واجهة سطر الأوامر Firebase، عليك إعداد مشروع Firebase.

إعداد واجهة سطر الأوامر أو تعديلها

تثبيت واجهة سطر الأوامر Firebase

يمكنك تثبيت واجهة سطر الأوامر Firebase باستخدام طريقة تتوافق مع نظام التشغيل ومستوى خبرتك و/أو حالة الاستخدام. بغض النظر عن طريقة تثبيت واجهة سطر الأوامر، يمكنك الوصول إلى الوظائف نفسها والأمر firebase.

Windows macOS Linux

Windows

يمكنك تثبيت Firebase CLI لنظام التشغيل Windows باستخدام أحد الخيارات التالية:

الخيار الوصف محتوى مقترَح لـ...
standalone binary نزِّل الملف الثنائي المستقل لواجهة سطر الأوامر. بعد ذلك، يمكنك الوصول إلى الملف التنفيذي لفتح نافذة سطر أوامر يمكنك فيها تنفيذ الأمر firebase. المطوّرون الجدد

المطوّرون الذين لا يستخدمون أو لا يعرفون Node.js
npm استخدِم npm (أداة إدارة حِزم Node) لتثبيت واجهة سطر الأوامر وتفعيل الأمر firebase المتاح على مستوى العالم. المطوّرون الذين يستخدمون Node.js

ملف ثنائي مستقل

لتنزيل وتشغيل البرنامج الثنائي لواجهة سطر الأوامر Firebase، اتّبِع الخطوات التالية:

  1. نزِّل Firebase ثنائي CLI لنظام التشغيل Windows.

  2. يمكنك الوصول إلى البرنامج الثنائي لفتح نافذة يمكنك فيها تنفيذ الأمر firebase

  3. تابِع تسجيل الدخول واختبِر واجهة سطر الأوامر.

npm

لاستخدام npm (أداة إدارة حِزم Node) لتثبيت واجهة سطر الأوامر Firebase، اتّبِع الخطوات التالية:

  1. ثبِّت Node.js باستخدام nvm-windows (أداة إدارة إصدارات Node). يؤدي تثبيت Node.js إلى تثبيت أدوات الأوامر npm تلقائيًا.

  2. ثبِّت واجهة سطر الأوامر Firebase من خلال npm عن طريق تنفيذ الأمر التالي:

    npm install -g firebase-tools

    يتيح هذا الأمر استخدام الأمر firebase المتاح على مستوى العالم.

  3. تابِع تسجيل الدخول واختبِر واجهة سطر الأوامر.

نظام التشغيل macOS أو Linux

يمكنك تثبيت واجهة سطر الأوامر Firebase على جهاز macOS أو Linux باستخدام أحد الخيارَين التاليَين:

الخيار الوصف محتوى مقترَح لـ...
نص برمجي للتثبيت التلقائي نفِّذ أمرًا واحدًا يرصد نظام التشغيل تلقائيًا، ثم ينزّل أحدث إصدار من واجهة سطر الأوامر، ثم يفعّل الأمر firebase المتاح على مستوى العالم. المطوّرون الجدد

المطوّرون الذين لا يستخدمون أو لا يعرفون Node.js

عمليات النشر المبرمَجة في بيئة الدمج المتواصل/النشر المتواصل
ملف ثنائي مستقل نزِّل الملف الثنائي المستقل لواجهة سطر الأوامر. بعد ذلك، يمكنك ضبط وتشغيل البرنامج الثنائي بما يتناسب مع سير عملك. إمكانية تخصيص سير العمل بالكامل باستخدام واجهة سطر الأوامر
npm استخدِم npm (أداة إدارة حِزم Node) لتثبيت واجهة سطر الأوامر وتفعيل الأمر firebase المتاح على مستوى العالم. المطوّرون الذين يستخدمون Node.js

نص التثبيت التلقائي

لتثبيت واجهة سطر الأوامر Firebase باستخدام نص التثبيت التلقائي، اتّبِع الخطوات التالية:

  1. نفِّذ أمر cURL التالي:

    curl -sL https://firebase.tools | bash

    يكتشف هذا النص البرمجي تلقائيًا نظام التشغيل لديك، ثم ينزّل أحدث إصدار من واجهة سطر الأوامر Firebase، ثم يفعّل الأمر firebase المتاح على مستوى العالم.

  2. يمكنك تسجيل الدخول واختبار واجهة سطر الأوامر.

للاطّلاع على المزيد من الأمثلة والتفاصيل حول النص البرمجي للتثبيت التلقائي، يُرجى الرجوع إلى الرمز المصدر للنص البرمجي على firebase.tools.

ملف ثنائي مستقل

لتنزيل وتشغيل الملف الثنائي الخاص بأداة Firebase CLI المتوافقة مع نظام التشغيل، اتّبِع الخطوات التالية:

  1. نزِّل ملف Firebase CLI الثنائي لنظام التشغيل: macOS | Linux

  2. (اختياري) إعداد الأمر firebase المتاح على مستوى العالم

    1. اجعل الملف الثنائي قابلاً للتنفيذ من خلال تشغيل chmod +x ./firebase_tools.
    2. أضِف مسار الملف الثنائي إلى PATH.
  3. تابِع تسجيل الدخول واختبِر واجهة سطر الأوامر.

npm

لاستخدام npm (أداة إدارة حِزم Node) لتثبيت واجهة سطر الأوامر Firebase، اتّبِع الخطوات التالية:

  1. ثبِّت Node.js باستخدام nvm (أداة إدارة إصدارات Node).
    يؤدي تثبيت Node.js إلى تثبيت أدوات الأوامر npm تلقائيًا.

  2. ثبِّت واجهة سطر الأوامر Firebase من خلال npm عن طريق تنفيذ الأمر التالي:

    npm install -g firebase-tools

    يتيح هذا الأمر استخدام الأمر firebase المتاح على مستوى العالم.

  3. تابِع تسجيل الدخول واختبِر واجهة سطر الأوامر.

تسجيل الدخول واختبار واجهة سطر الأوامر Firebase

بعد تثبيت واجهة سطر الأوامر، عليك إثبات ملكية حسابك. بعد ذلك، يمكنك تأكيد المصادقة من خلال إدراج مشاريعك على Firebase.

  1. سجِّل الدخول إلى Firebase باستخدام حسابك على Google من خلال تنفيذ الأمر التالي:

    firebase login

    يربط هذا الأمر جهازك المحلي بخدمة Firebase ويمنحك إذن الوصول إلى مشاريعك على Firebase.

  2. اختبِر أنّ واجهة سطر الأوامر مثبَّتة بشكلٍ صحيح ويمكنها الوصول إلى حسابك من خلال إدراج مشاريعك على Firebase. نفِّذ الأمر التالي:

    firebase projects:list

    يجب أن تكون القائمة المعروضة هي نفسها مشاريع Firebase المدرَجة في وحدة تحكّم Firebase.

التحديث إلى أحدث إصدار من واجهة سطر الأوامر

بشكل عام، ننصحك باستخدام أحدث إصدار من Firebase CLI.

تعتمد طريقة تعديل إصدار واجهة سطر الأوامر على نظام التشغيل وطريقة تثبيت واجهة سطر الأوامر.

Windows

‫macOS

  • نص التثبيت التلقائي: شغِّل curl -sL https://firebase.tools | upgrade=true bash

  • ملف ثنائي مستقل: نزِّل الإصدار الجديد، ثم استبدِله على نظامك.

  • npm: شغِّل npm install -g firebase-tools

Linux

  • نص التثبيت التلقائي: شغِّل curl -sL https://firebase.tools | upgrade=true bash

  • ملف ثنائي مستقل: نزِّل الإصدار الجديد، ثم استبدِله على نظامك.

  • npm: شغِّل npm install -g firebase-tools

إلغاء تثبيت واجهة سطر الأوامر Firebase

تعتمد طريقة إلغاء تثبيت واجهة سطر الأوامر على نظام التشغيل وطريقة تثبيتها.

Windows

  • برنامج ثنائي مستقل: احذف البرنامج الثنائي firebase.exe الذي نزّلته.
  • npm: شغِّل npm uninstall -g firebase-tools

‫macOS

  • نص التثبيت التلقائي: شغِّل curl -sL https://firebase.tools | uninstall=true bash

  • برنامج ثنائي مستقل: احذف البرنامج الثنائي firebase الذي نزّلته. إذا أضفت موقعه الجغرافي إلى متغيّر البيئة PATH، احرص على إزالته.

  • npm: شغِّل npm uninstall -g firebase-tools

Linux

  • نص التثبيت التلقائي: شغِّل curl -sL https://firebase.tools | uninstall=true bash

  • برنامج ثنائي مستقل: احذف البرنامج الثنائي firebase الذي نزّلته. إذا أضفت موقعه الجغرافي إلى متغيّر البيئة PATH، احرص على إزالته.

  • npm: شغِّل npm uninstall -g firebase-tools

استخدام واجهة سطر الأوامر مع أنظمة التكامل المستمر

ننصحك بالمصادقة باستخدام بيانات الاعتماد التلقائية للتطبيق عند استخدام واجهة سطر الأوامر مع أنظمة التكامل المستمر.

(يُنصح به) استخدام بيانات الاعتماد التلقائية للتطبيق

سيرصد Firebase CLI بيانات الاعتماد التلقائية للتطبيق ويستخدمها في حال تم ضبطها. أبسط طريقة لمصادقة واجهة سطر الأوامر في بيئات التكامل المستمر وغيرها من البيئات التي لا تتضمّن واجهة مستخدم هي إعداد بيانات الاعتماد التلقائية للتطبيق.

(قديم) استخدِم FIREBASE_TOKEN

يمكنك بدلاً من ذلك إثبات ملكية حسابك باستخدام FIREBASE_TOKEN. هذه الطريقة أقل أمانًا من بيانات الاعتماد التلقائية للتطبيق، ولم يعُد يُنصح بها.

  1. على جهاز مزوّد بمتصفّح، ثبِّت أداة سطر الأوامر Firebase.

  2. ابدأ عملية تسجيل الدخول بتنفيذ الأمر التالي:

    firebase login:ci
  3. انتقِل إلى عنوان URL المقدَّم، ثم سجِّل الدخول باستخدام حساب Google.

  4. اطبع رمزًا مميزًا لإعادة التحميل جديدًا. لن تتأثّر جلسة واجهة سطر الأوامر الحالية.

  5. خزِّن الرمز المميز الناتج بطريقة آمنة ولكن يمكن الوصول إليها في نظام التكامل المستمر.

  6. استخدِم هذا الرمز المميّز عند تنفيذ أوامر firebase. يمكنك استخدام أحد الخيارَين التاليَين:

    • الخيار 1: تخزين الرمز المميّز كمتغيّر بيئة FIREBASE_TOKEN سيستخدم نظامك الرمز المميّز تلقائيًا.

    • الخيار 2: نفِّذ جميع أوامر firebase باستخدام العلامة --token TOKEN في نظام الدمج المتواصل.
      في ما يلي ترتيب الأولوية لتحميل الرمز المميّز: العلامة ومتغيّر البيئة ومشروع Firebase المطلوب.

إعداد مشروع Firebase

تتطلّب العديد من المهام الشائعة التي يتم تنفيذها باستخدام واجهة سطر الأوامر، مثل النشر في مشروع Firebase، دليل مشروع. يمكنك إنشاء دليل مشروع باستخدام الأمر firebase init. يكون دليل المشروع عادةً هو الدليل نفسه الذي يضم جذر نظام التحكّم بالمصادر، وبعد تشغيل firebase init، يحتوي الدليل على ملف إعداد firebase.json.

لبدء مشروع Firebase جديد، نفِّذ الأمر التالي من داخل دليل تطبيقك:

firebase init

تساعدك خطوات الأمر firebase init في إعداد دليل مشروعك وبعض منتجات Firebase. أثناء إعداد المشروع، يطلب منك Firebase CLI إكمال المهام التالية:

  • اختَر مشروعًا تلقائيًا على Firebase.

    تربط هذه الخطوة دليل المشروع الحالي بمشروع Firebase، ما يتيح تنفيذ الأوامر الخاصة بالمشروع (مثل firebase deploy) على مشروع Firebase المناسب.

    من الممكن أيضًا ربط مشاريع متعددة في Firebase (مثل مشروع تجريبي ومشروع إنتاج) بدليل المشروع نفسه.

  • اختَر منتجات Firebase التي تريد إعدادها في مشروع Firebase.

    تطلب منك هذه الخطوة ضبط إعدادات لملفات معيّنة للمنتجات أو الميزات المحدّدة. لمزيد من التفاصيل حول عمليات الإعداد هذه، يُرجى الرجوع إلى مستندات المنتج المعنيّ (على سبيل المثال، Hosting أو Authentication). يُرجى العِلم أنّه يمكنك دائمًا تنفيذ firebase init لاحقًا لإعداد المزيد من منتجات Firebase.

في نهاية عملية الإعداد، ينشئ Firebase تلقائيًا الملفَين التاليَين في جذر دليل تطبيقك على الجهاز:

ملف firebase.json

ينشئ الأمر firebase init ملف إعدادات firebase.json في جذر دليل مشروعك.

ملف firebase.json مطلوب لتفعيل مواد العرض باستخدام واجهة Firebase CLI لأنّه يحدّد الملفات والإعدادات من دليل مشروعك التي يتم تفعيلها في مشروع Firebase (مثل إعدادات Hosting وإعدادات موفّر Authentication وقواعد الأمان وإعدادات Cloud Functions). بما أنّه يمكن تحديد بعض الإعدادات في دليل مشروعك أو في وحدة تحكّم Firebase، احرص على حلّ أي تعارضات محتملة في النشر.

يمكنك ضبط معظم خيارات Firebase Hosting مباشرةً في ملف firebase.json. ومع ذلك، بالنسبة إلى خدمات Firebase الأخرى التي يمكن نشرها باستخدام Firebase CLI، ينشئ الأمر firebase init ملفات محدّدة يمكنك فيها تحديد إعدادات هذه الخدمات، مثل ملف index.js لخدمة Cloud Functions. يمكنك أيضًا إعداد خطافات ما قبل النشر أو ما بعد النشر في ملف firebase.json.

الملف التالي firebase.json هو مثال شامل يعرض خيارات الإعداد للعديد من خدمات Firebase. ويوضّح أيضًا ميزات مثل إعداد Cloud Functions وLocal Emulator Suite متعددة المصادر، ونموذج Remote Config. يُرجى العِلم أنّ ملف firebase.json لأي مشروع معيّن سيحتوي فقط على إعدادات خدمات Firebase التي تم إعدادها لهذا المشروع المحدّد (على سبيل المثال، Firebase Hosting وCloud Functions فقط). وتتيح إضافة المفتاح $schema إمكانية التحقّق من الصحة والإكمال التلقائي في العديد من أدوات تعديل الرموز.

    {
      "$schema": "https://raw.githubusercontent.com/firebase/firebase-tools/master/schema/firebase-config.json",
      "hosting": {
        "public": "public",
        "ignore": [
          "firebase.json",
          "**/.*",
          "**/node_modules/**"
        ],
        "cleanUrls": true,
        "trailingSlash": false
      },
      "apphosting": {
        "backendId": "my-app",
        "rootDir": "backend",
        "ignore": [
          "firebase.json",
          "**/.*",
          "**/node_modules/**"
        ]
      },
      "firestore": {
        "rules": "firestore.rules",
        "indexes": "firestore.indexes.json"
      },
      "storage": {
        "rules": "storage.rules"
      },
      "database": {
        "rules": "database.rules.json"
      },
      "dataconnect": {
        "source": "dataconnect",
        "location": "us-central1"
      },
      "functions": [
        {
          "source": "functions",
          "codebase": "default",
          "ignore": [
            "**/.*",
            "**/node_modules/**"
          ],
          "predeploy": [
            "npm --prefix \"$RESOURCE_DIR\" run lint",
            "npm --prefix \"$RESOURCE_DIR\" run build"
          ]
        }
      ],
      "emulators": {
        "auth": {
          "port": 9099
        },
        "functions": {
          "port": 5001
        },
        "firestore": {
          "port": 8080
        },
        "hosting": {
          "port": 5000
        },
        "storage": {
          "port": 9199
        },
        "ui": {
          "enabled": true,
          "port": 4000
        },
        "singleProjectMode": true
      },
      "extensions": {
        "my-storage-resizer": "firebase/storage-resize-images@^0.1.0"
      },
      "auth": {
        "providers": {
          "anonymous": true,
          "emailPassword": true,
          "googleSignIn": {
            "oAuthBrandDisplayName": "My App",
            "supportEmail": "support@myapp.com"
          }
        }
      },
      "remoteconfig": {
        "template": "remoteconfig.template.json"
      }
    }

على الرغم من استخدام firebase.json تلقائيًا، يمكنك تمرير العلامة --config PATH لتحديد ملف إعداد بديل.

إعدادات قواعد بيانات Cloud Firestore المتعددة

عند تشغيل firebase init، سيحتوي ملف firebase.json على مفتاح firestore واحد يتوافق مع قاعدة البيانات التلقائية لمشروعك، كما هو موضّح في المثال السابق.

إذا كان مشروعك يحتوي على قواعد بيانات Cloud Firestore متعددة، عدِّل ملف firebase.json لربط ملفات مصدر فهارس Cloud Firestore Security Rules وقواعد البيانات المختلفة بكل قاعدة بيانات. عدِّل الملف باستخدام مصفوفة JSON، مع إدخال واحد لكل قاعدة بيانات.

      "firestore": [
        {
          "database": "(default)",
          "rules": "firestore.default.rules",
          "indexes": "firestore.default.indexes.json"
        },
        {
          "database": "ecommerce",
          "rules": "firestore.ecommerce.rules",
          "indexes": "firestore.ecommerce.indexes.json"
        }
      ],

Cloud Functions ملفات يجب تجاهلها عند النشر

عند نشر الدالة، تحدّد واجهة سطر الأوامر تلقائيًا قائمة بالملفات في الدليل functions التي سيتم تجاهلها. يمنع ذلك نشر ملفات غير ضرورية في الخلفية، ما قد يؤدي إلى زيادة حجم البيانات عند النشر.

في ما يلي قائمة الملفات التي يتم تجاهلها تلقائيًا، معروضة بتنسيق JSON:

"ignore": [
  ".git",
  ".runtimeconfig.json",
  "firebase-debug.log",
  "firebase-debug.*.log",
  "node_modules"
]

إذا أضفت قيمًا مخصّصة خاصة بك إلى ignore في firebase.json، تأكَّد من الاحتفاظ بقائمة الملفات المعروضة في القائمة السابقة (أو إضافتها إذا كانت غير متوفّرة).

إدارة الأسماء المستعارة للمشاريع

يمكنك ربط عدّة مشاريع على Firebase بدليل المشروع نفسه. على سبيل المثال، يمكنك استخدام مشروع واحد على Firebase للتنظيم وآخر للإنتاج. باستخدام بيئات مشاريع مختلفة، يمكنك التحقّق من التغييرات قبل نشرها في الإصدار العلني. يتيح لك الأمر firebase use التبديل بين الأسماء المستعارة بالإضافة إلى إنشاء أسماء مستعارة جديدة.

إضافة اسم مستعار للمشروع

عند اختيار مشروع Firebase أثناء إعداد المشروع، يتم تلقائيًا تعيين الاسم المستعار default للمشروع. ومع ذلك، للسماح بتنفيذ الأوامر الخاصة بالمشروع على مشروع Firebase مختلف مع الاستمرار في استخدام دليل المشروع نفسه، نفِّذ الأمر التالي من داخل دليل مشروعك:

firebase use --add

يطلب منك هذا الأمر اختيار مشروع آخر على Firebase وتعيين المشروع كاسم مستعار. تتم كتابة عمليات تعيين الأسماء المستعارة في ملف .firebaserc داخل دليل مشروعك.

استخدام أسماء مستعارة للمشاريع

لاستخدام أسماء مستعارة لمشاريع Firebase تم تعيينها، نفِّذ أيًا من الأوامر التالية من داخل دليل مشروعك.

الأوامر الوصف
firebase use عرض قائمة بالأسماء المستعارة المحدّدة لدليل مشروعك
firebase use \
PROJECT_ID|ALIAS
توجّه جميع الأوامر إلى مشروع Firebase المحدّد لتنفيذها.
تستخدم واجهة سطر الأوامر هذا المشروع باعتباره "المشروع النشط".
firebase use --clear يمحو المشروع النشط.

نفِّذ الأمر firebase use PROJECT_ID|ALIAS لضبط مشروع نشط جديد قبل تنفيذ أوامر أخرى في واجهة سطر الأوامر.

firebase use \
--unalias PROJECT_ALIAS
يزيل اسمًا مستعارًا من دليل مشروعك.

يمكنك إلغاء المشروع النشط الحالي واستخدام مشروع آخر من خلال تمرير العلامة --project مع أي أمر من أوامر واجهة سطر الأوامر. على سبيل المثال، يمكنك ضبط واجهة سطر الأوامر (CLI) لتنفيذ عملية في مشروع Firebase الذي خصّصت له الاسم المستعار staging. إذا أردت تنفيذ أمر واحد على مشروع Firebase الذي خصّصت له الاسم المستعار prod، يمكنك تنفيذ الأمر firebase deploy --project=prod مثلاً.

التحكّم في المصدر وأسماء المشاريع المستعارة

بشكل عام، يجب تسجيل ملف .firebaserc في نظام التحكّم بالمصادر للسماح لفريقك بمشاركة أسماء مستعارة للمشاريع. ومع ذلك، بالنسبة إلى مشاريع المصادر المفتوحة أو النماذج الأولية، لا يُنصح عادةً بتضمين ملف .firebaserc.

إذا كان لديك مشروع تطوير مخصّص لاستخدامك فقط، يمكنك إما تمرير العلامة --project مع كل أمر أو تنفيذ firebase use PROJECT_ID بدون تعيين اسم مستعار لمشروع Firebase.

عرض مشروع Firebase واختباره على الجهاز

يمكنك عرض مشروع Firebase واختباره على عناوين URL مستضافة محليًا قبل نشره في الإصدار العلني. إذا كنت تريد اختبار ميزات محدّدة فقط، يمكنك استخدام قائمة مفصولة بفواصل في علامة ضمن الأمر firebase serve.

نفِّذ الأمر التالي من جذر دليل المشروع على الجهاز إذا كنت تريد تنفيذ أي من المهام التالية:

  • عرض المحتوى الثابت لتطبيقك المستضاف على Firebase
  • استخدِم Cloud Functions من أجل إنشاء محتوى ديناميكي لـ Firebase Hosting وتريد استخدام دوال HTTP الخاصة بالإنتاج (المنشورة) لمحاكاة Hosting على عنوان URL محلي.
firebase serve --only hosting

محاكاة مشروعك باستخدام دوال HTTP المحلية

نفِّذ أيًا من الأوامر التالية من دليل مشروعك لمحاكاة مشروعك باستخدام دوال HTTP المحلية.

  • لمحاكاة وظائف HTTP والاستضافة لإجراء الاختبار على عناوين URL محلية، استخدِم أحد الأمرين التاليين:

    firebase serve
    firebase serve --only functions,hosting // uses a flag
  • لمحاكاة وظائف HTTP فقط، استخدِم الأمر التالي:

    firebase serve --only functions

الاختبار من أجهزة محلية أخرى

بشكلٍ تلقائي، لا يستجيب firebase serve إلا للطلبات الواردة من localhost. هذا يعني أنّه سيكون بإمكانك الوصول إلى المحتوى المستضاف من متصفّح الويب على جهاز الكمبيوتر، ولكن ليس من الأجهزة الأخرى على شبكتك. إذا أردت إجراء الاختبار من أجهزة محلية أخرى، استخدِم العلامة --host على النحو التالي:

firebase serve --host 0.0.0.0  // accepts requests to any host

النشر في مشروع Firebase

تتولّى واجهة سطر الأوامر Firebase إدارة عملية نشر الرموز والأصول في مشروعك على Firebase، بما في ذلك:

  • الإصدارات الجديدة من مواقعك الإلكترونية Firebase Hosting
  • Cloud Functions for Firebase جديدة أو معدَّلة أو حالية
  • مخططات وموصلات جديدة أو معدَّلة لـ "Firebase SQL Connect"
  • Security Rules لـ Firebase Realtime Database
  • Security Rules لـ Cloud Storage for Firebase
  • Security Rules لـ Cloud Firestore
  • فهارس Cloud Firestore
  • إعدادات Authentication

لنشر تطبيقك في مشروع على Firebase، نفِّذ الأمر التالي من دليل مشروعك:

firebase deploy

يمكنك اختياريًا إضافة تعليق إلى كل عملية نشر. سيظهر هذا التعليق مع معلومات النشر الأخرى في صفحة Firebase Hosting الخاصة بمشروعك. على سبيل المثال:

firebase deploy -m "Deploying the best new feature ever."

عند استخدام الأمر firebase deploy، يجب الانتباه إلى ما يلي:

  • لنشر الموارد من دليل مشروع، يجب أن يحتوي دليل المشروع على ملف firebase.json. يتم إنشاء هذا الملف تلقائيًا من أجلك باستخدام الأمر firebase init.

  • تنشئ firebase deploy تلقائيًا إصدارًا لجميع الموارد القابلة للنشر في دليل مشروعك. لنشر خدمات أو ميزات محدّدة من Firebase، استخدِم عملية النشر الجزئي.

نشر خدمات Firebase محدّدة

إذا كنت تريد نشر خدمات أو ميزات محدّدة من Firebase فقط، يمكنك استخدام قائمة مفصولة بفواصل في علامة على الأمر firebase deploy. على سبيل المثال، ينشر الأمر التالي المحتوى Firebase Hosting وCloud Storage Security Rules.

firebase deploy --only hosting,storage

يسرد الجدول التالي الخدمات والميزات المتاحة للنشر الجزئي. تتطابق الأسماء في العلامات مع المفاتيح في ملف الإعدادات firebase.json.

بنية العلامة الخدمة أو الميزة التي تم نشرها
--only auth إعدادات موفّر Authentication
--only database Firebase Realtime Database Security Rules
--only dataconnect مخططات Firebase SQL Connect والموصّلات
--only firestore Cloud Firestore Security Rules فهارس و لجميع قواعد البيانات التي تمّ ضبطها
--only functions Cloud Functions for Firebase
--only hosting المحتوى باللغة Firebase Hosting
--only storage Cloud Storage for Firebase Security Rules

تعارضات النشر في Security Rules

بالنسبة إلى Firebase Realtime Database وCloud Storage for Firebase وCloud Firestore، يمكنك تحديد Security Rules إما في دليل المشروع المحلي أو في وحدة تحكّم Firebase.

هناك خيار آخر لتجنُّب تعارضات النشر وهو استخدام النشر الجزئي وتحديد Security Rules فقط في وحدة تحكّم Firebase.

إعداد مهام مستندة إلى نصوص برمجية قبل النشر وبعده

يمكنك ربط نصوص برمجية shell بالأمر firebase deploy لتنفيذ مهام ما قبل النشر أو ما بعد النشر. على سبيل المثال، يمكن أن يحوّل نص برمجي قبل النشر رمز TypeScript إلى JavaScript، ويمكن أن يرسل خطاف بعد النشر إشعارًا إلى المشرفين بشأن عمليات نشر محتوى جديد على الموقع الإلكتروني إلى Firebase Hosting.

لإعداد خطافات ما قبل النشر أو ما بعد النشر، أضِف نصوص bash البرمجية إلى ملف الإعداد firebase.json. يمكنك تحديد نصوص برمجية موجزة مباشرةً في ملف firebase.json، أو يمكنك الإشارة إلى ملفات أخرى في دليل مشروعك.

على سبيل المثال، النص البرمجي التالي هو تعبير firebase.json لمهمة postdeploy ترسل رسالة Slack عند نشرها بنجاح إلى Firebase Hosting.

"hosting": {
  // ...

  "postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
  "public": "public"
}

يقع ملف البرنامج النصي messageSlack.sh في دليل المشروع ويظهر على النحو التالي:

curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}'
     \https://SLACK_WEBHOOK_URL

يمكنك إعداد خطافات predeploy وpostdeploy لأي من الأصول التي يمكنك نشرها. يُرجى العِلم أنّ تنفيذ firebase deploy يؤدي إلى تشغيل جميع مهام ما قبل النشر وما بعد النشر المحدّدة في ملف firebase.json. لتنفيذ المهام المرتبطة بخدمة معيّنة من Firebase فقط، استخدِم أوامر النشر الجزئي.

تعرض كلّ من العبارتين الافتتاحيتين المشوّقتين predeploy وpostdeploy مخرجات النصوص القياسية ومخرجات الأخطاء في الوحدة الطرفية. في حالات تعذُّر التحديث، يُرجى مراعاة ما يلي:

  • إذا تعذّر إكمال عملية ربط ما قبل النشر على النحو المتوقّع، يتم إلغاء عملية النشر.
  • في حال تعذّر عملية النشر لأي سبب، لن يتم تشغيل خطافات postdeploy.

متغيرات البيئة

في النصوص البرمجية التي يتم تنفيذها في خطافَي predeploy وpostdeploy، تتوفّر متغيرات البيئة التالية:

  • $GCLOUD_PROJECT: رقم تعريف المشروع النشط
  • $PROJECT_DIR: الدليل الجذر الذي يحتوي على الملف firebase.json
  • $RESOURCE_DIR: (لبرامج hosting وfunctions النصية فقط) موقع الدليل الذي يحتوي على موارد Hosting أو Cloud Functions التي سيتم نشرها

حصص النشر

من المحتمل (وإن كان ذلك غير مرجّح) أن تتجاوز حصة تحدّ من معدّل أو حجم عمليات نشر Firebase. على سبيل المثال، عند نشر عدد كبير جدًا من الدوال، قد تتلقّى رسالة خطأ HTTP 429 Quota. لحلّ هذه المشاكل، جرِّب استخدام النشر الجزئي.

الرجوع إلى إصدار سابق من عملية نشر

يمكنك التراجع عن عملية نشر Firebase Hosting من صفحة Firebase Hosting في مشروعك من خلال اختيار الإجراء العودة إلى الحالة السابقة للإصدار المطلوب.

لا يمكن الرجوع إلى إصدارات Security Rules في Firebase Realtime Database أو Cloud Storage for Firebase أو Cloud Firestore.

مرجع الأوامر

أوامر المشرف في واجهة سطر الأوامر

الأوامر الوصف
مساعدة تعرض هذه السمة معلومات المساعدة حول واجهة سطر الأوامر أو أوامر معيّنة.
init يربط مشروع Firebase جديدًا ويعدّه في الدليل الحالي. ينشئ هذا الأمر ملف إعداد firebase.json في الدليل الحالي.
login تتم مصادقة واجهة سطر الأوامر باستخدام حسابك على Google. يجب توفُّر إمكانية الوصول إلى متصفّح ويب.
لتسجيل الدخول إلى واجهة سطر الأوامر في البيئات البعيدة التي لا تسمح بالوصول إلى localhost، استخدِم العلامة --no-localhost.
login:ci تنشئ هذه الطريقة رمز مصادقة مميزًا لاستخدامه في بيئات غير تفاعلية.
login:add تسجيل الدخول إلى حساب Google إضافي
login:list تعرض هذه السمة جميع حسابات Google التي تمّت مصادقتها.
login:use تضبط هذه السمة حساب Google النشط.
logout تسجيل الخروج من حساب Google من واجهة سطر الأوامر
فتح يفتح متصفّحًا يعرض موارد المشروع ذات الصلة.
projects:list تعرض هذه الصفحة جميع مشاريع Firebase التي لديك إذن الوصول إليها.
استخدام يضبط مشروع Firebase النشط لواجهة سطر الأوامر.
تُستخدَم لإدارة أسماء المشاريع المستعارة.

أوامر إدارة المشاريع

الأوامر الوصف
إدارة مشاريع Firebase
projects:addfirebase تضيف هذه العملية موارد Firebase وتفعّل خدمات Firebase في مشروع حالي Google Cloud.
projects:create تُنشئ هذه السمة مشروع Google Cloud جديدًا، ثم تضيف موارد Firebase إلى المشروع الجديد.
projects:list تعرض هذه الصفحة جميع مشاريع Firebase التي لديك إذن الوصول إليها.
إدارة تطبيقات Firebase (iOS وAndroid والويب)
apps:create تنشئ هذه الطريقة تطبيقًا جديدًا على Firebase في المشروع النشط.
apps:list تعرض هذه السمة قائمة بتطبيقات Firebase المسجّلة في المشروع النشط.
apps:sdkconfig تعرض هذه السمة إعدادات Firebase لتطبيق Firebase.
setup:web تم إيقاف هذا الحقل نهائيًا. بدلاً من ذلك، استخدِم apps:sdkconfig وحدِّد web كمعلَمة النظام الأساسي.
تعرض هذه السمة إعدادات Firebase لتطبيق ويب على Firebase.
إدارة تجزئات شهادات SHA (على أجهزة Android فقط)
apps:android:sha:create \
FIREBASE_APP_ID SHA_HASH
تضيف هذه الطريقة تجزئة شهادة SHA المحدّدة إلى تطبيق Android المحدّد على Firebase.
apps:android:sha:delete \
FIREBASE_APP_ID SHA_HASH
تحذف هذه الطريقة تجزئة شهادة SHA المحدّدة من تطبيق Android المحدّد على Firebase.
apps:android:sha:list \
FIREBASE_APP_ID
تعرض هذه الطريقة قائمة بتجزئة شهادات SHA لتطبيق Android المحدّد على Firebase.

النشر والتطوير على الجهاز

تتيح لك هذه الأوامر نشر موقعك الإلكتروني Firebase Hosting والتفاعل معه.

الأوامر الوصف
تفعيل ينشر هذا الأمر الرموز والأصول من دليل مشروعك إلى المشروع النشط. بالنسبة إلى Firebase Hosting، يجب توفير ملف إعداد firebase.json.
عرض يبدأ خادم ويب محليًا باستخدام إعدادات Firebase Hosting. بالنسبة إلى Firebase Hosting، يجب توفير ملف إعداد firebase.json.

App Distribution أوامر

الأوامر الوصف
appdistribution:distribute \
--app FIREBASE_APP_ID
يُتيح الإصدار للمختبِرين.
appdistribution:testers:add تضيف هذه الطريقة مختبِرين إلى المشروع.
appdistribution:testers:remove تتم إزالة المختبِرين من المشروع.
appdistribution:testers:list تعرض هذه السمة قائمة بالمختبِرين في المشروع.
appdistribution:groups:create تنشئ هذه الطريقة مجموعة اختبار.
appdistribution:groups:delete تحذف هذه الطريقة مجموعة مختبِرين.
appdistribution:groups:list تعرض هذه السمة قوائم مجموعات المختبِرين في المشروع.

App Hosting أوامر

الأوامر الوصف
apphosting:backends:create \
--project PROJECT_ID \
--location REGION --app APP_ID
تنشئ هذه السمة مجموعة الموارد المُدارة المرتبطة بقاعدة رموز برمجية واحدة تتضمّن App Hosting خلفية. يمكنك اختياريًا تحديد تطبيق ويب حالي على Firebase باستخدام معرّف تطبيق Firebase.
apphosting:backends:get \
BACKEND_ID \
--project PROJECT_ID \
--location REGION
يستردّ تفاصيل محدّدة، بما في ذلك عنوان URL العام، لخادم خلفي.
apphosting:backends:list \
--project PROJECT_ID
تعرض هذه الطريقة قائمة بجميع الخدمات الخلفية النشطة المرتبطة بمشروع.
firebase apphosting:backends:delete \
BACKEND_ID \
--project PROJECT_ID \
--location REGION
يحذف هذا الأمر خلفية تطبيق من المشروع.
firebase apphosting:config:export \
--project PROJECT_ID \
--secrets ENVIRONMENT_NAME
تصدير الأسرار لاستخدامها في محاكاة التطبيق
يتم ضبط القيمة التلقائية على الأسرار المخزّنة في apphosting.yaml، أو يتم استخدام --secrets لتحديد أي بيئة تحتوي على ملف apphosting.ENVIRONMENT_NAME.yaml مطابق.
firebase apphosting:rollouts:create \
BACKEND_ID \
--git_branch BRANCH_NAME \
--git_commit COMMIT_ID
تُنشئ هذه الطريقة طرحًا يدويًا.
يمكنك اختياريًا تحديد آخر عملية حفظ تغييرات في فرع أو عملية حفظ تغييرات معيّنة. إذا لم يتم توفير أي خيارات، سيطلب منك التطبيق اختيار فرع من قائمة الفروع.
apphosting:secrets:set KEY --project PROJECT_ID \
--location REGION \
--data-file DATA_FILE_PATH
تخزِّن هذه السمة مواد سرية في Secret Manager.
يمكنك اختياريًا تقديم مسار لقراءة بيانات الأسرار. اضبط القيمة على _ لقراءة البيانات السرية من الإدخال العادي.
apphosting:secrets:grantaccess KEY \
--backend BACKEND_ID \
--emails EMAILS \
--project PROJECT_ID \
--location REGION
يمنح هذا الحقل الأذونات إلى كلمات المرور المحفوظة المقدَّمة لحسابات الخدمة أو المستخدمين أو المجموعات، ما يتيح الوصول إليها من خلال App Hosting في وقت الإنشاء أو التشغيل. يمكن تمرير سر واحد أو أكثر، مفصولاً بفاصلة.
apphosting:secrets:describe KEY \
--project PROJECT_ID
تعرض هذه الطريقة البيانات الوصفية لسرّ ونسخه.
firebase apphosting:secrets:access \
KEY[@version] \
--project PROJECT_ID
تتيح هذه الطريقة الوصول إلى قيمة سرية معيّنة باستخدام المفتاح السرّي وإصداره. يتم ضبط الإعدادات التلقائية على الوصول إلى أحدث إصدار.

أوامر Authentication (إدارة المستخدمين)

الأوامر الوصف
auth:export تصدير حسابات المستخدمين في المشروع النشط إلى ملف JSON أو CSV لمزيد من التفاصيل، يُرجى الرجوع إلى صفحة auth:import وauth:export.
auth:import يستورد هذا الأمر حسابات المستخدمين من ملف JSON أو CSV إلى المشروع النشط. لمزيد من التفاصيل، يُرجى الرجوع إلى صفحة auth:import وauth:export.

Cloud Firestore أوامر

الأوامر الوصف
firestore:locations

تعرض هذه السمة قائمة بالمواقع الجغرافية المتاحة لقاعدة بيانات Cloud Firestore.

firestore:databases:create DATABASE_ID

أنشئ مثيلاً لقاعدة البيانات في الوضع الأصلي في مشروع Firebase.

يأخذ الأمر العلامات التالية:

  • --location <اسم المنطقة> لتحديد الموقع الجغرافي الذي سيتم فيه نشر قاعدة البيانات. يمكنك تشغيل firebase firestore:locations لعرض قائمة بالمواقع الجغرافية المتاحة. مطلوب
  • --delete-protection <deleteProtectionState> للسماح بحذف قاعدة البيانات المحدّدة أو منع ذلك. القيم الصالحة هي ENABLED أو DISABLED. القيمة التلقائية هي DISABLED.
  • استخدِم --point-in-time-recovery <PITRState> لتحديد ما إذا كان خيار الاسترداد إلى نقطة زمنية محدّدة مفعّلاً. القيمتان الصالحتان هما ENABLED أو DISABLED. القيمة التلقائية هي DISABLED. اختياريّ.
  • استخدِم --edition <edition> لتحديد فئة قاعدة البيانات. بالنسبة إلى ميزات Enterprise، اضبط القيمة على enterprise.
  • --firestore-data-access <ENABLED|DISABLED> (إصدار Enterprise فقط) للتحكّم في مدى توفّر واجهة برمجة التطبيقات Firestore API. القيمة التلقائية هي ENABLED.
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (Enterprise only) to control MongoDB-compatible API availability. القيمة التلقائية هي DISABLED.
  • --realtime-updates <ENABLED|DISABLED> (مؤسسات فقط) لتفعيل ميزة "المشاهدة" (في الوقت الفعلي) أو إيقافها يجب أن تكون قيمة --firestore-data-access هي ENABLED. القيمة التلقائية هي ENABLED.
firestore:databases:list

عرض قائمة بقواعد البيانات في مشروع Firebase.

firestore:databases:get DATABASE_ID

الحصول على إعدادات قاعدة بيانات محدّدة في مشروع Firebase الخاص بك.

بالنسبة إلى قواعد بيانات Enterprise، يتضمّن الناتج الحالة Edition وFirestore Data Access وMongoDB Compatible Data Access وRealtime Updates.

firestore:databases:update DATABASE_ID

تعديل إعدادات قاعدة بيانات محدّدة في مشروع Firebase الخاص بك.

يجب تحديد علامة واحدة على الأقل. يأخذ الأمر العلامات التالية:

  • --delete-protection <deleteProtectionState> للسماح بحذف قاعدة البيانات المحدّدة أو منع ذلك. القيم الصالحة هي ENABLED أو DISABLED. القيمة التلقائية هي DISABLED.
  • استبدِل --point-in-time-recovery <PITRState> بـ لتحديد ما إذا كان سيتم تفعيل ميزة "الاسترداد في نقطة زمنية محددة". القيمتان المسموح بإدراجهما هما ENABLED أو DISABLED. القيمة التلقائية هي DISABLED. اختياريّ.
  • --firestore-data-access <ENABLED|DISABLED> (إصدار Enterprise فقط) للتحكّم في مدى توفّر واجهة برمجة التطبيقات Firestore API.
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (Enterprise only) to control MongoDB-compatible API availability.
  • --realtime-updates <ENABLED|DISABLED> (مؤسسات فقط) لتفعيل ميزة "المشاهدة" (في الوقت الفعلي) أو إيقافها يجب أن تكون قيمة --firestore-data-access هي ENABLED.
firestore:databases:delete DATABASE_ID

احذف قاعدة بيانات في مشروع Firebase.

firestore:indexes

فهارس القوائم لقاعدة بيانات في مشروع Firebase

يستخدِم الأمر العلامة التالية:

  • استخدِم الخيار --database DATABASE_ID لتحديد اسم قاعدة البيانات التي تريد عرض فهارسها. في حال عدم توفيرها، سيتم إدراج الفهارس لقاعدة البيانات التلقائية.
firestore:delete

لحذف المستندات في قاعدة بيانات المشروع النشط باستخدام واجهة سطر الأوامر، يمكنك حذف جميع المستندات في مجموعة بشكل متكرّر.

يُرجى العِلم أنّ حذف بيانات Cloud Firestore باستخدام واجهة سطر الأوامر يؤدي إلى تحمّل تكاليف القراءة والحذف. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة فهم فوترة Cloud Firestore.

يستخدِم الأمر العلامة التالية:

  • --database DATABASE_ID لتحديد اسم قاعدة البيانات التي سيتم حذف المستندات منها. في حال عدم تحديدها، يتم حذف المستندات من قاعدة البيانات التلقائية. اختياريّ.

أوامر Cloud Functions for Firebase

الأوامر الوصف
functions:config:clone تم إيقاف هذه السمة نهائيًا.
تنسخ هذه السمة بيئة مشروع آخر إلى مشروع Firebase النشط.
functions:config:export تصدِّر هذه السمة إعدادات وقت التشغيل للمشروع النشط إلى Google Cloud Secret Manager.
functions:config:get تم إيقاف هذه السمة نهائيًا.
يتم استرداد قيم الإعدادات الحالية Cloud Functions للمشروع النشط.
functions:config:set تم إيقافها نهائيًا.
تخزِّن قيم إعدادات وقت التشغيل الخاصة Cloud Functions للمشروع النشط.
functions:config:unset تم إيقافها نهائيًا.
تزيل هذه السمة القيم من إعدادات وقت التشغيل للمشروع النشط.
functions:delete \
FUNCTION_NAME
تحذف هذه الطريقة الدالة المحدّدة.
functions:list تعرض هذه السمة قائمة بالدوال التي تم نشرها.
functions:log يقرأ هذا الإذن السجلات من Cloud Functions التي تم نشرها.
functions:secrets:access \
SECRET_NAME
تتيح هذه الطريقة الوصول إلى قيمة سرية معيّنة باستخدام المفتاح السرّي وإصداره.
functions:secrets:destroy \
SECRET_NAME
يحذف سرًا.
functions:secrets:get \
SECRET_NAME
تعرض هذه الطريقة البيانات الوصفية لسرّ ونسخه.
functions:secrets:prune تدمير المفاتيح السرية غير المستخدَمة
functions:secrets:set \
SECRET_NAME
تنشئ هذه الطريقة مفتاحًا سرّيًا أو تعدّله.
functions:shell يبدأ هذا الأمر تشغيل واجهة تفاعلية محلية لاختبار الدوال.

لمزيد من المعلومات، يُرجى الرجوع إلى المستندات المتعلقة بإعداد البيئة.

أوامر Crashlytics

الأوامر الوصف
crashlytics:mappingfile:generateid \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML
تنشئ هذه السمة معرّفًا فريدًا لملف الربط في ملف موارد Android (XML) المحدّد.
crashlytics:mappingfile:upload \
--app=FIREBASE_APP_ID \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML \
PATH/TO/MAPPING_FILE.TXT
تحميل ملف ربط (TXT) متوافق مع Proguard لهذا التطبيق، وربطه بمعرّف ملف الربط المحدّد في ملف موارد Android (XML) المحدّد
crashlytics:symbols:upload \
--app=FIREBASE_APP_ID \
PATH/TO/SYMBOLS
تُنشئ هذه السمة ملف رموز متوافقًا مع Crashlytics لأعطال المكتبة المجمّعة من رموز برمجية أصلية على Android، ثم تحمّله إلى خوادم Firebase.

SQL Connect أوامر

يتم تناول هذه الأوامر وحالات استخدامها بمزيد من التفصيل في دليل مرجع واجهة سطر الأوامر SQL Connect.

الأوامر الوصف
dataconnect:services:list تعرض هذه الصفحة جميع خدمات SQL Connect التي تم نشرها في مشروعك على Firebase.
dataconnect:sql:diff \
SERVICE_ID
بالنسبة إلى الخدمة المحدّدة، يعرض هذا الأمر الاختلافات بين مخطط SQL Connect محلي ومخطط قاعدة بيانات Cloud SQL.
dataconnect:sql:migrate \
--force \
SERVICE_ID
تنقل هذه السمة مخطط قاعدة بيانات Cloud SQL ليطابق مخطط SQL Connect المحلي.
dataconnect:sql:grant\
--role=ROLE \
--email=EMAIL \
SERVICE_ID
يمنح دور SQL للمستخدم المحدّد أو عنوان البريد الإلكتروني لحساب الخدمة.
بالنسبة إلى العلامة --role، يجب أن يكون دور SQL الذي سيتم منحه أحد الأدوار التالية: owner أو writer أو reader.
بالنسبة إلى العلامة --email، أدخِل عنوان البريد الإلكتروني للمستخدم أو حساب الخدمة الذي تريد منحه الدور.
dataconnect:sdk:generate تنشئ هذه الأداة حِزم SDK مكتوبة لموصلات SQL Connect.

Extensions أوامر

الأوامر الوصف
ext تعرض هذه السمة معلومات حول كيفية استخدام أوامر Firebase Extensions.
تعرض هذه السمة مثيلات الإضافة المثبَّتة في المشروع النشط.
ext:configure \
EXTENSION_INSTANCE_ID
تعيد هذه السمة ضبط قيم المَعلمات لنسخة من إضافة في بيان الإضافة.
ext:info \
PUBLISHER_ID/EXTENSION_ID
تعرض هذه السمة معلومات تفصيلية عن إضافة.
ext:install \
PUBLISHER_ID/EXTENSION_ID
تضيف هذه السمة مثيلاً جديدًا لإحدى الإضافات إلى بيان الإضافة.
ext:sdk:install تثبِّت حِزم تطوير البرامج (SDK) لتحديد الإضافات في الدوال.
ext:list تعرض هذه الطريقة جميع مثيلات الإضافة المثبَّتة في مشروع Firebase.
تعرض هذه السمة معرّف المثيل لكل إضافة.
ext:uninstall \
EXTENSION_INSTANCE_ID
يزيل هذا الأمر نسخة من إضافة من بيان الإضافة.
ext:update \
EXTENSION_INSTANCE_ID
تعدّل هذه السمة مثيلاً لإحدى الإضافات إلى أحدث إصدار في بيان الإضافة.
ext:export يصدِّر هذا الأمر جميع نُسخ الإضافات المثبَّتة من مشروعك إلى بيان الإضافة.

Extensions أوامر الناشر

الأوامر الوصف
ext:dev:init تهيئة قاعدة رموز هيكلية لإضافة جديدة في الدليل الحالي
ext:dev:list \
PUBLISHER_ID
تعرض هذه السمة قائمة بجميع الإضافات التي حمّلها أحد الناشرين.
ext:dev:register تسجِّل هذه السمة مشروع Firebase كـ مشروع ناشر إضافات.
ext:dev:deprecate \
PUBLISHER_ID/EXTENSION_ID \
VERSION_PREDICATE
إيقاف إصدارات الإضافة التي تتطابق مع شرط الإصدار
يمكن أن تكون أداة تحديد الإصدار إصدارًا واحدًا (مثل 1.0.0)، أو نطاقًا من الإصدارات (مثل >1.0.0).
في حال عدم توفير أداة تحديد الإصدار، سيتم إيقاف جميع إصدارات تلك الإضافة نهائيًا.
ext:dev:undeprecate \
PUBLISHER_ID/EXTENSION_ID \
VERSION_PREDICATE
إلغاء إيقاف إصدارات الإضافة التي تتطابق مع شرط الإصدار
يمكن أن تكون أداة تحديد الإصدار إصدارًا واحدًا (مثل 1.0.0)، أو نطاقًا من الإصدارات (مثل >1.0.0).
في حال عدم توفير أداة تحديد الإصدار، سيتم إيقاف جميع إصدارات تلك الإضافة.
ext:dev:upload \
PUBLISHER_ID/EXTENSION_ID
تحميل نسخة جديدة من إضافة
ext:dev:usage \
PUBLISHER_ID
تعرِض هذه الصفحة عدد عمليات التثبيت ومقاييس الاستخدام للإضافات التي حمّلها ناشر.

أوامر Hosting

الأوامر الوصف
hosting:disable

يتوقف عن عرض زيارات Firebase Hosting لمشروع Firebase النشط.

سيؤدي تنفيذ هذا الأمر إلى عرض الرسالة "لم يتم العثور على الموقع الإلكتروني" في عنوان URL الخاص بمشروعك Hosting.

إدارة Hosting موقع إلكتروني
firebase hosting:sites:create \
SITE_ID

تنشئ هذه السمة موقعًا إلكترونيًا جديدًا Hosting في مشروع Firebase النشط باستخدام SITE_ID المحدّد.

(اختياري) حدِّد تطبيقًا حاليًا على Firebase للربط بالموقع الإلكتروني الجديد من خلال تمرير العلامة التالية: --app FIREBASE_APP_ID

firebase hosting:sites:delete \
SITE_ID

يحذف هذا الأمر الموقع الإلكتروني Hosting المحدّد

تعرض واجهة سطر الأوامر طلب تأكيد قبل حذف الموقع الإلكتروني.

(اختياري) يمكنك تخطّي طلب التأكيد من خلال تمرير العلامات التالية: -f أو --force

firebase hosting:sites:get \
SITE_ID

يستردّ معلومات حول الموقع الإلكتروني Hosting المحدّد

firebase hosting:sites:list

تعرض هذه السمة جميع مواقع Hosting لمشروع Firebase النشط.

إدارة قنوات الإصدارات التجريبية
firebase hosting:channel:create \
CHANNEL_ID

تنشئ هذه السمة قناة معاينة جديدة في الموقع الإلكتروني الافتراضي Hosting باستخدام CHANNEL_ID

لا يتم نشر هذا الأمر في القناة.

firebase hosting:channel:delete \
CHANNEL_ID

يحذف قناة المعاينة المحدّدة

لا يمكنك حذف قناة بث مباشر لموقع إلكتروني.

firebase hosting:channel:deploy \
CHANNEL_ID

ينشر هذا الأمر محتوى Hosting وإعداداتك في قناة المعاينة المحدّدة

إذا لم تكن قناة المعاينة متوفّرة بعد، ينشئ هذا الأمر القناة في الموقع الإلكتروني التلقائي Hosting قبل نشرها في القناة.

firebase hosting:channel:list تعرض هذه السمة جميع القنوات (بما في ذلك القناة "المباشرة") في الموقع الإلكتروني التلقائي Hosting
firebase hosting:channel:open \
CHANNEL_ID
يفتح متصفّحًا لعنوان URL الخاص بالقناة المحدّدة أو يعرض عنوان URL إذا لم يكن من الممكن فتحه في متصفّح
استنساخ الإصدار
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

ينسخ هذا الأمر أحدث إصدار تم نشره على قناة "المصدر" المحدّدة إلى قناة "الوجهة" المحدّدة.

يتم أيضًا نشر هذا الأمر على القناة "target" المحدّدة. إذا لم تكن قناة "الاستهداف" متوفّرة بعد، ينشئ هذا الأمر قناة معاينة جديدة في الموقع الإلكتروني Hosting "المستهدف" قبل النشر في القناة.

firebase hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

تستنسخ هذه السمة الإصدار المحدّد إلى القناة "المستهدَفة" المحدّدة.

يتم أيضًا نشر هذا الأمر في القناة "المستهدَفة" المحدّدة. إذا لم تكن قناة "الاستهداف" متوفّرة بعد، ينشئ هذا الأمر قناة معاينة جديدة في الموقع الإلكتروني Hosting "المستهدف" قبل النشر في القناة.

يمكنك العثور على VERSION_ID في لوحة بيانات Hosting في وحدة تحكّم Firebase.

Realtime Database أوامر

يُرجى العِلم أنّه يمكنك إنشاء آلة افتراضية Realtime Database الأوّلية التلقائية في Firebase console أو باستخدام سير عمل firebase init العام أو تدفّق firebase init database المحدّد.

بعد إنشاء الآلات الافتراضية، يمكنك إدارتها كما هو موضّح في مقالة إدارة آلات افتراضية معيّنة والتفاعل معها باستخدام واجهة سطر الأوامر.

الأوامر الوصف
database:get يجلب هذا الأمر البيانات من قاعدة بيانات المشروع النشط ويعرضها بتنسيق JSON. يتيح تنفيذ طلبات بحث في البيانات المفهرسة.
database:instances:create تنشئ هذه الطريقة مثيلاً لقاعدة بيانات باسم مثيل محدّد. يقبل الخيار --location لإنشاء قاعدة بيانات في منطقة محدّدة. للاطّلاع على أسماء المناطق التي يمكن استخدامها مع هذا الخيار، يُرجى الاطّلاع على مقالة اختيار المواقع الجغرافية لمشروعك. إذا لم تكن هناك قاعدة بيانات للمشروع الحالي، سيُطلب منك تنفيذ عملية firebase init لإنشاء قاعدة بيانات.
database:instances:list تعرض هذه السمة جميع مثيلات قاعدة البيانات لهذا المشروع. يقبل الخيار --location لعرض قواعد البيانات في منطقة محدّدة. للاطّلاع على أسماء المناطق التي يمكن استخدامها مع هذا الخيار، يُرجى الاطّلاع على اختيار مواقع جغرافية لمشروعك.
قاعدة البيانات:الملف الشخصي إنشاء ملف شخصي للعمليات في قاعدة بيانات المشروع النشط لمزيد من التفاصيل، راجِع أنواع عمليات Realtime Database.
database:push تدفع هذه الطريقة بيانات جديدة إلى قائمة في موقع محدّد في قاعدة بيانات المشروع النشط. تتلقّى هذه السمة الإدخال من ملف أو STDIN أو وسيط سطر أوامر.
database:remove يحذف هذا الإجراء جميع البيانات في موقع جغرافي محدّد ضمن قاعدة بيانات المشروع النشط.
database:set يستبدل هذا الإجراء جميع البيانات في موقع محدّد في قاعدة بيانات المشروع النشط. تتلقّى الإدخال من ملف أو STDIN أو وسيط سطر أوامر.
database:update تُجري هذه الطريقة تعديلاً جزئيًا في موقع محدّد ضمن قاعدة بيانات المشروع النشط. تتلقّى الإدخال من ملف أو STDIN أو وسيطة سطر الأوامر.

أوامر Remote Config

الأوامر الوصف
remoteconfig:versions:list \
--limit NUMBER_OF_VERSIONS
تعرض هذه السمة آخر عشرة إصدارات من النموذج. حدِّد 0 لعرض جميع النُسخ الحالية، أو يمكنك اختياريًا إدخال الخيار --limit للحدّ من عدد النُسخ المعروضة.
remoteconfig:get \
--v, version_number VERSION_NUMBER
--o, output FILENAME
تعرض هذه السمة النموذج حسب الإصدار (الإصدار الأخير هو الإعداد التلقائي) وتعرض مجموعات المَعلمات والمَعلمات وأسماء الشروط والإصدار في جدول. يمكنك اختياريًا كتابة الإخراج في ملف محدّد باستخدام -o, FILENAME.
remoteconfig:rollback \
--v, version_number VERSION_NUMBER
--force
تعود إلى الإصدار السابق من نموذج Remote Config الذي تم تحديده برقم أو إلى الإصدار السابق مباشرةً (الإصدار الحالي -1). ما لم يتم تمرير --force، ستظهر الطلبات Y/N قبل المتابعة إلى عملية التراجع.
remoteconfig:experiments:list \
--filter EXPRESSION
--pageSize NUMBER
--pageToken TOKEN
تعرض هذه الطريقة جميع تجارب Remote Config لمشروع، مع إمكانية الفلترة، وعدد التجارب المطلوب عرضها في كل صفحة (القيمة التلقائية هي 10)، ورمز الصفحة كإزاحة بداية للقائمة.
remoteconfig:experiments:get \
EXPERIMENT_ID
تعرض هذه الطريقة تفاصيل Remote Config التجربة المحدّدة.
remoteconfig:experiments:delete \
EXPERIMENT_ID
يحذف هذا الإجراء Remote Config التجربة المحدّدة.
remoteconfig:rollouts:list \
--filter EXPRESSION
--pageSize NUMBER
--pageToken TOKEN
تعرض هذه الطريقة جميع عمليات الطرح Remote Config لمشروع، مع إمكانية الفلترة، وعدد عمليات الطرح المطلوب عرضها في كل صفحة (القيمة التلقائية هي 10)، ورمز الصفحة كإزاحة البداية للقائمة.
remoteconfig:rollouts:get \
ROLLOUT_ID
تعرض هذه الطريقة تفاصيل Remote Config الإصدار المحدّد.
remoteconfig:rollouts:delete \
ROLLOUT_ID
يحذف عملية الطرح Remote Config المحدّدة.