Firebase सीएलआई के बारे में जानकारी

Firebase CLI (GitHub) में, Firebase प्रोजेक्ट को मैनेज करने, देखने, और डिप्लॉय करने के लिए कई टूल उपलब्ध हैं.

Firebase CLI का इस्तेमाल करने से पहले, Firebase प्रोजेक्ट सेट अप करें.

सीएलआई को सेट अप करना या अपडेट करना

Firebase सीएलआई इंस्टॉल करना

अपने ऑपरेटिंग सिस्टम, अनुभव के लेवल, और/या इस्तेमाल के उदाहरण के हिसाब से, Firebase CLI को इंस्टॉल किया जा सकता है. सीएलआई को इंस्टॉल करने का तरीका चाहे जो भी हो, आपके पास एक जैसी सुविधाओं और firebase कमांड का ऐक्सेस होता है.

Windows macOS Linux

Windows

Firebase CLI for Windows को इंस्टॉल करने के लिए, इनमें से कोई एक विकल्प चुनें:

विकल्प ब्यौरा इसके लिए सुझाव दिया गया है...
स्टैंडअलोन बाइनरी सीएलआई के लिए, स्टैंडअलोन बाइनरी डाउनलोड करें. इसके बाद, आपके पास एक्ज़ीक्यूटेबल को ऐक्सेस करने का विकल्प होता है. इससे एक शेल खुलता है, जहां firebase कमांड चलाई जा सकती है. नए डेवलपर

ऐसे डेवलपर जो Node.js का इस्तेमाल नहीं कर रहे हैं या इसके बारे में नहीं जानते हैं
npm सीएलआई इंस्टॉल करने और ग्लोबल तौर पर उपलब्ध firebase कमांड को चालू करने के लिए, npm (Node Package Manager) का इस्तेमाल करें. Node.js का इस्तेमाल करने वाले डेवलपर

स्टैंडअलोन बाइनरी

Firebase CLI के लिए बाइनरी डाउनलोड करने और चलाने के लिए, यह तरीका अपनाएं:

  1. Windows के लिए Firebase सीएलआई बाइनरी डाउनलोड करें.

  2. बाइनरी को ऐक्सेस करके, एक शेल खोलें. यहां firebase कमांड चलाई जा सकती है.

  3. लॉग इन करने और सीएलआई को टेस्ट करने के लिए आगे बढ़ें.

npm

npm (Node Package Manager) का इस्तेमाल करके, Firebase CLI इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  1. nvm-windows (Node Version Manager) का इस्तेमाल करके, Node.js इंस्टॉल करें. Node.js इंस्टॉल करने पर, npm कमांड टूल अपने-आप इंस्टॉल हो जाते हैं.

  2. npm के ज़रिए Firebase सीएलआई इंस्टॉल करने के लिए, यह कमांड चलाएं:

    npm install -g firebase-tools

    इस कमांड से, दुनिया भर में उपलब्ध firebase कमांड चालू हो जाती है.

  3. लॉग इन करने और सीएलआई को टेस्ट करने के लिए आगे बढ़ें.

macOS या Linux

macOS या Linux के लिए Firebase CLI को इंस्टॉल करने के लिए, इनमें से कोई एक विकल्प चुनें:

विकल्प ब्यौरा इसके लिए सुझाव दिया गया है...
अपने-आप इंस्टॉल होने वाली स्क्रिप्ट एक ऐसा निर्देश चलाएं जो आपके ऑपरेटिंग सिस्टम का अपने-आप पता लगाता है, सीएलआई का नया वर्शन डाउनलोड करता है, और फिर दुनिया भर में उपलब्ध firebase निर्देश को चालू करता है. नए डेवलपर

ऐसे डेवलपर जो Node.js का इस्तेमाल नहीं कर रहे हैं या इसके बारे में नहीं जानते हैं

CI/CD एनवायरमेंट में अपने-आप डिप्लॉय होने की सुविधा
स्टैंडअलोन बाइनरी सीएलआई के लिए, स्टैंडअलोन बाइनरी डाउनलोड करें. इसके बाद, अपने वर्कफ़्लो के हिसाब से बाइनरी को कॉन्फ़िगर और चलाया जा सकता है. CLI का इस्तेमाल करके, अपनी पसंद के मुताबिक वर्कफ़्लो बनाने की सुविधा
npm सीएलआई इंस्टॉल करने और ग्लोबल तौर पर उपलब्ध firebase कमांड को चालू करने के लिए, npm (Node Package Manager) का इस्तेमाल करें. Node.js का इस्तेमाल करने वाले डेवलपर

ऑटो इंस्टॉल स्क्रिप्ट

ऑटोमैटिक इंस्टॉल स्क्रिप्ट का इस्तेमाल करके Firebase CLI इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  1. यह cURL कमांड चलाएं:

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

    यह स्क्रिप्ट आपके ऑपरेटिंग सिस्टम का अपने-आप पता लगाती है. इसके बाद, Firebase CLI की नई रिलीज़ डाउनलोड करती है. इसके बाद, दुनिया भर में उपलब्ध firebase कमांड को चालू करती है.

  2. लॉग इन करने और सीएलआई को टेस्ट करने के लिए आगे बढ़ें.

अपने-आप इंस्टॉल होने वाली स्क्रिप्ट के बारे में ज़्यादा उदाहरण और जानकारी के लिए, firebase.tools पर स्क्रिप्ट का सोर्स कोड देखें.

स्टैंडअलोन बाइनरी

अपने ओएस के लिए, Firebase CLI का बाइनरी डाउनलोड करने और उसे चलाने के लिए, यह तरीका अपनाएं:

  1. अपने ओएस के लिए Firebase सीएलआई बाइनरी डाउनलोड करें: macOS | Linux

  2. (ज़रूरी नहीं) दुनिया भर में उपलब्ध firebase कमांड सेट अप करें.

    1. chmod +x ./firebase_tools कमांड चलाकर, बाइनरी को एक्ज़ीक्यूटेबल बनाएं.
    2. अपने PATH में बाइनरी का पाथ जोड़ें.
  3. लॉग इन करने और सीएलआई को टेस्ट करने के लिए आगे बढ़ें.

npm

Firebase CLI इंस्टॉल करने के लिए, npm (Node Package Manager) का इस्तेमाल करने के लिए, यह तरीका अपनाएं:

  1. nvm (Node Version Manager) का इस्तेमाल करके, Node.js इंस्टॉल करें.
    Node.js इंस्टॉल करने पर, npm कमांड टूल अपने-आप इंस्टॉल हो जाते हैं.

  2. npm के ज़रिए Firebase सीएलआई इंस्टॉल करने के लिए, यह कमांड चलाएं:

    npm install -g firebase-tools

    इस कमांड से, दुनिया भर में उपलब्ध firebase कमांड चालू हो जाती है.

  3. लॉग इन करने और सीएलआई को टेस्ट करने के लिए आगे बढ़ें.

लॉग इन करें और Firebase CLI को आज़माएं

सीएलआई इंस्टॉल करने के बाद, आपको पुष्टि करनी होगी. इसके बाद, अपने Firebase प्रोजेक्ट की सूची बनाकर पुष्टि की जा सकती है.

  1. अपने Google खाते का इस्तेमाल करके Firebase में लॉग इन करें. इसके लिए, यह कमांड चलाएं:

    firebase login

    इस कमांड से, आपकी लोकल मशीन Firebase से कनेक्ट हो जाती है. साथ ही, आपको अपने Firebase प्रोजेक्ट का ऐक्सेस मिल जाता है.

  2. पुष्टि करें कि सीएलआई सही तरीके से इंस्टॉल हो गया है और आपके खाते को ऐक्सेस कर रहा है. इसके लिए, अपने Firebase प्रोजेक्ट की सूची बनाएं. यह कमांड चलाएं:

    firebase projects:list

    दिखाई गई सूची में मौजूद Firebase प्रोजेक्ट, Firebase कंसोल में मौजूद Firebase प्रोजेक्ट के बराबर होने चाहिए.

सीएलआई के नए वर्शन पर अपडेट करना

आम तौर पर, आपको Firebase CLI के सबसे नए वर्शन का इस्तेमाल करना चाहिए.

सीएलआई के वर्शन को अपडेट करने का तरीका, आपके ऑपरेटिंग सिस्टम और सीएलआई को इंस्टॉल करने के तरीके पर निर्भर करता है.

खिड़कियां

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 सीएलआई को अनइंस्टॉल करना

सीएलआई को अनइंस्टॉल करने का तरीका, आपके ऑपरेटिंग सिस्टम और सीएलआई को इंस्टॉल करने के तरीके पर निर्भर करता है.

खिड़कियां

  • स्टैंडअलोन बाइनरी: डाउनलोड की गई 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. दिए गए यूआरएल पर जाएं. इसके बाद, Google खाते का इस्तेमाल करके लॉग इन करें.

  4. नया रीफ़्रेश टोकन प्रिंट करें. मौजूदा सीएलआई सेशन पर इसका कोई असर नहीं पड़ेगा.

  5. आउटपुट टोकन को अपने सीआई सिस्टम में सुरक्षित तरीके से सेव करें, ताकि इसे आसानी से ऐक्सेस किया जा सके.

  6. firebase निर्देश चलाने के लिए, इस टोकन का इस्तेमाल करें. इनमें से किसी एक विकल्प का इस्तेमाल किया जा सकता है:

    • पहला विकल्प: टोकन को एनवायरमेंट वैरिएबल FIREBASE_TOKEN के तौर पर सेव करें. आपका सिस्टम, टोकन का इस्तेमाल अपने-आप करेगा.

    • दूसरा विकल्प: अपने सीआई सिस्टम में, --token TOKEN फ़्लैग के साथ सभी firebase कमांड चलाएं.
      टोकन लोड करने के लिए प्राथमिकता का क्रम यह है: फ़्लैग, एनवायरमेंट वैरिएबल, और Firebase प्रोजेक्ट.

Firebase प्रोजेक्ट शुरू करना

CLI का इस्तेमाल करके कई सामान्य टास्क किए जाते हैं. जैसे, किसी Firebase प्रोजेक्ट में डिप्लॉय करना. इसके लिए, प्रोजेक्ट डायरेक्ट्री की ज़रूरत होती है. firebase init कमांड का इस्तेमाल करके, प्रोजेक्ट डायरेक्ट्री बनाई जाती है. प्रोजेक्ट डायरेक्ट्री आम तौर पर, आपकी सोर्स कंट्रोल रूट डायरेक्ट्री के जैसी ही होती है. साथ ही, firebase init चलाने के बाद, डायरेक्ट्री में firebase.json कॉन्फ़िगरेशन फ़ाइल होती है.

नया Firebase प्रोजेक्ट शुरू करने के लिए, अपने ऐप्लिकेशन की डायरेक्ट्री में जाकर यह कमांड चलाएं:

firebase init

firebase init कमांड की मदद से, प्रोजेक्ट डायरेक्ट्री और कुछ Firebase प्रॉडक्ट सेट अप किए जा सकते हैं. प्रोजेक्ट शुरू करते समय, Firebase CLI आपसे ये टास्क पूरे करने के लिए कहता है:

  • डिफ़ॉल्ट Firebase प्रोजेक्ट चुनें.

    इस चरण में, मौजूदा प्रोजेक्ट डायरेक्ट्री को Firebase प्रोजेक्ट से जोड़ा जाता है. इससे प्रोजेक्ट से जुड़ी कमांड (जैसे कि firebase deploy) सही Firebase प्रोजेक्ट के लिए काम करती हैं.

    एक ही प्रोजेक्ट डायरेक्ट्री के साथ एक से ज़्यादा Firebase प्रोजेक्ट (जैसे, स्टेजिंग प्रोजेक्ट और प्रोडक्शन प्रोजेक्ट) भी जोड़े जा सकते हैं.

  • अपने Firebase प्रोजेक्ट में सेट अप करने के लिए, Firebase के प्रॉडक्ट चुनें.

    इस चरण में, आपको चुने गए प्रॉडक्ट के लिए खास फ़ाइलों के कॉन्फ़िगरेशन सेट करने के लिए कहा जाता है. इन कॉन्फ़िगरेशन के बारे में ज़्यादा जानने के लिए, प्रॉडक्ट के दस्तावेज़ (उदाहरण के लिए, Hosting) देखें. ध्यान दें कि ज़्यादा Firebase प्रॉडक्ट सेट अप करने के लिए, firebase init को बाद में भी चलाया जा सकता है.

शुरू करने की प्रोसेस पूरी होने के बाद, Firebase आपके ऐप्लिकेशन की लोकल डायरेक्ट्री के रूट में ये दो फ़ाइलें अपने-आप बना देता है:

  • firebase.json कॉन्फ़िगरेशन फ़ाइल, जिसमें आपके प्रोजेक्ट का कॉन्फ़िगरेशन दिया गया होता है.

  • .firebaserc फ़ाइल, जिसमें आपके प्रोजेक्ट के उर्फ़ सेव होते हैं.

firebase.json फ़ाइल

firebase init कमांड, आपके प्रोजेक्ट डायरेक्ट्री के रूट में एक firebase.json कॉन्फ़िगरेशन फ़ाइल बनाती है.

firebase.json फ़ाइल ज़रूरी है, ताकि Firebase CLI की मदद से ऐसेट डिप्लॉय की जा सकें. ऐसा इसलिए, क्योंकि यह फ़ाइल बताती है कि आपके प्रोजेक्ट डायरेक्ट्री की कौनसी फ़ाइलें और सेटिंग, आपके Firebase प्रोजेक्ट में डिप्लॉय की गई हैं. कुछ सेटिंग को आपकी प्रोजेक्ट डायरेक्ट्री या Firebase कंसोल में तय किया जा सकता है. इसलिए, पक्का करें कि आपने डिप्लॉयमेंट से जुड़ी किसी भी संभावित समस्या को ठीक कर लिया हो.

firebase.json फ़ाइल में सीधे तौर पर, ज़्यादातर Firebase Hosting विकल्पों को कॉन्फ़िगर किया जा सकता है. हालांकि, Firebase CLI के साथ डिप्लॉय की जा सकने वाली अन्य Firebase सेवाओं के लिए, firebase init कमांड ऐसी फ़ाइलें बनाती है जिनमें उन सेवाओं के लिए सेटिंग तय की जा सकती हैं. जैसे, Cloud Functions के लिए index.js फ़ाइल. 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"
      },
      "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"
]

अगर आपको firebase.json में ignore के लिए अपनी कस्टम वैल्यू जोड़नी हैं, तो पक्का करें कि आपने पिछली सूची में दिखाई गई फ़ाइलों की सूची को बनाए रखा हो. अगर यह सूची मौजूद नहीं है, तो इसे जोड़ें.

प्रोजेक्ट के उपनाम मैनेज करना

एक ही प्रोजेक्ट डायरेक्ट्री से कई 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 फ़्लैग को किसी भी सीएलआई कमांड के साथ पास करके, यह तय किया जा सकता है कि ऐक्टिव प्रोजेक्ट के तौर पर कौनसा प्रोजेक्ट इस्तेमाल किया जाए. उदाहरण के लिए: अपने सीएलआई को ऐसे Firebase प्रोजेक्ट के लिए सेट किया जा सकता है जिसे आपने staging उपनाम दिया है. अगर आपको prod उपनाम वाले Firebase प्रोजेक्ट के लिए एक ही कमांड चलानी है, तो उदाहरण के लिए, prod कमांड चलाई जा सकती है.firebase deploy --project=prod

सोर्स कंट्रोल और प्रोजेक्ट के एलियास

आम तौर पर, आपको अपनी .firebaserc फ़ाइल को सोर्स कंट्रोल में सेव करना चाहिए, ताकि आपकी टीम प्रोजेक्ट के एलियास शेयर कर सके. हालांकि, ओपन सोर्स प्रोजेक्ट या स्टार्टर टेंप्लेट के लिए, आपको आम तौर पर अपनी .firebaserc फ़ाइल में इसकी जांच नहीं करनी चाहिए.

अगर आपके पास कोई ऐसा डेवलपमेंट प्रोजेक्ट है जिसका इस्तेमाल सिर्फ़ आपको करना है, तो हर कमांड के साथ --project फ़्लैग पास किया जा सकता है. इसके अलावा, Firebase प्रोजेक्ट को कोई उपनाम असाइन किए बिना firebase use PROJECT_ID चलाया जा सकता है.

अपने Firebase प्रोजेक्ट को स्थानीय तौर पर टेस्ट करना और उसे पब्लिश करना

प्रोडक्शन में डिप्लॉय करने से पहले, स्थानीय तौर पर होस्ट किए गए यूआरएल पर अपने Firebase प्रोजेक्ट को देखा और टेस्ट किया जा सकता है. अगर आपको सिर्फ़ कुछ सुविधाओं को टेस्ट करना है, तो firebase serve कमांड में मौजूद फ़्लैग में कॉमा लगाकर अलग की गई सूची का इस्तेमाल किया जा सकता है.

अगर आपको इनमें से कोई भी काम करना है, तो अपनी लोकल प्रोजेक्ट डायरेक्ट्री के रूट से यह कमांड चलाएं:

  • Firebase होस्टिंग की सुविधा का इस्तेमाल करके होस्ट किए गए ऐप्लिकेशन का स्टैटिक कॉन्टेंट देखें.
  • आपको Cloud Functions का इस्तेमाल करके, Firebase Hosting के लिए डाइनैमिक कॉन्टेंट जनरेट करना है. साथ ही, आपको लोकल यूआरएल पर Hosting को एमुलेट करने के लिए, प्रोडक्शन (डिप्लॉय किए गए) एचटीटीपी फ़ंक्शन का इस्तेमाल करना है.
firebase serve --only hosting

local एचटीटीपी फ़ंक्शन का इस्तेमाल करके, अपने प्रोजेक्ट को एम्युलेट करना

लोकल एचटीटीपी फ़ंक्शन का इस्तेमाल करके अपने प्रोजेक्ट का इम्यूलेशन करने के लिए, अपनी प्रोजेक्ट डायरेक्ट्री से इनमें से कोई भी कमांड चलाएं.

  • लोकल यूआरएल पर टेस्टिंग के लिए, एचटीटीपी फ़ंक्शन और होस्टिंग की नकल करने के लिए, इनमें से किसी एक कमांड का इस्तेमाल करें:

    firebase serve
    firebase serve --only functions,hosting // uses a flag
  • सिर्फ़ एचटीटीपी फ़ंक्शन का सिम्युलेशन करने के लिए, इस कमांड का इस्तेमाल करें:

    firebase serve --only functions

लोकल नेटवर्क से कनेक्ट किए गए अन्य डिवाइसों पर टेस्ट करना

डिफ़ॉल्ट रूप से, firebase serve सिर्फ़ localhost से मिले अनुरोधों का जवाब देता है. इसका मतलब है कि होस्ट किए गए कॉन्टेंट को अपने कंप्यूटर के वेब ब्राउज़र से ऐक्सेस किया जा सकेगा. हालांकि, इसे अपने नेटवर्क पर मौजूद अन्य डिवाइसों से ऐक्सेस नहीं किया जा सकेगा. अगर आपको अन्य लोकल डिवाइसों से टेस्ट करना है, तो --host फ़्लैग का इस्तेमाल करें. जैसे:

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

Firebase प्रोजेक्ट में डिप्लॉय करना

Firebase CLI, आपके Firebase प्रोजेक्ट में कोड और ऐसेट के डिप्लॉयमेंट को मैनेज करता है. इसमें ये शामिल हैं:

  • आपकी Firebase Hosting साइटों की नई रिलीज़
  • नई, अपडेट की गई या मौजूदा Cloud Functions for Firebase
  • Firebase Data Connect के लिए नए या अपडेट किए गए स्कीमा और कनेक्टर
  • Firebase Realtime Database के लिए नियम
  • Cloud Storage for Firebase के लिए नियम
  • Cloud Firestore के लिए नियम
  • Cloud Firestore के लिए इंडेक्स

किसी Firebase प्रोजेक्ट में डिप्लॉय करने के लिए, अपने प्रोजेक्ट की डायरेक्ट्री से यह कमांड चलाएं:

firebase deploy

आपके पास हर डिप्लॉयमेंट में टिप्पणी जोड़ने का विकल्प होता है. यह टिप्पणी, आपके प्रोजेक्ट के Firebase Hosting पेज पर, डिप्लॉयमेंट की अन्य जानकारी के साथ दिखेगी. उदाहरण के लिए:

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

firebase deploy कमांड का इस्तेमाल करते समय, इन बातों का ध्यान रखें:

  • किसी प्रोजेक्ट डायरेक्ट्री से संसाधन डिप्लॉय करने के लिए, प्रोजेक्ट डायरेक्ट्री में firebase.json फ़ाइल होनी चाहिए. यह फ़ाइल, firebase init कमांड की मदद से आपके लिए अपने-आप बनाई जाती है.

  • डिफ़ॉल्ट रूप से, firebase deploy आपके प्रोजेक्ट डायरेक्ट्री में मौजूद, डिप्लॉय किए जा सकने वाले सभी संसाधनों के लिए एक रिलीज़ बनाता है. Firebase की कुछ सेवाओं या सुविधाओं को डिप्लॉय करने के लिए, आंशिक डिप्लॉयमेंट का इस्तेमाल करें.

सुरक्षा नियमों को लागू करने से जुड़े टकराव

Firebase Realtime Database, Cloud Storage for Firebase, और Cloud Firestore के लिए, सुरक्षा के नियम तय किए जा सकते हैं. इसके लिए, अपनी लोकल प्रोजेक्ट डायरेक्ट्री या Firebase कंसोल का इस्तेमाल करें.

डप्लॉयमेंट से जुड़ी समस्याओं से बचने के लिए, आंशिक डप्लॉयमेंट का इस्तेमाल करें और सिर्फ़ Firebase कंसोल में नियम तय करें.

डिप्लॉयमेंट के लिए कोटा

ऐसा हो सकता है कि आपने किसी ऐसे कोटे का उल्लंघन किया हो जिससे Firebase डिप्लॉयमेंट की कार्रवाइयों की दर या वॉल्यूम सीमित हो जाता है. हालांकि, ऐसा होने की संभावना कम होती है. उदाहरण के लिए, बहुत ज़्यादा संख्या में फ़ंक्शन डिप्लॉय करते समय, आपको HTTP 429 Quota गड़बड़ी का मैसेज मिल सकता है. ऐसी समस्याओं को हल करने के लिए, आंशिक तौर पर डिप्लॉयमेंट का इस्तेमाल करें.

किसी डिप्लॉयमेंट को पहले जैसा करना

अपने प्रोजेक्ट के Firebase Hosting पेज से Firebase Hosting डिप्लॉयमेंट को वापस लाया जा सकता है. इसके लिए, चुनी गई रिलीज़ के लिए वापस लाएं कार्रवाई चुनें.

Firebase Realtime Database, Cloud Storage for Firebase या Cloud Firestore के लिए, सुरक्षा नियमों की रिलीज़ को पहले जैसा नहीं किया जा सकता.

Firebase की कुछ सेवाओं को डिप्लॉय करना

अगर आपको सिर्फ़ Firebase की कुछ सेवाओं या सुविधाओं को डिप्लॉय करना है, तो firebase deploy कमांड में मौजूद फ़्लैग में, कॉमा लगाकर अलग की गई सूची का इस्तेमाल किया जा सकता है. उदाहरण के लिए, यहां दिया गया निर्देश, Firebase Hosting कॉन्टेंट और Cloud Storage सुरक्षा के नियमों को डिप्लॉय करता है.

firebase deploy --only hosting,storage

यहां दी गई टेबल में, आंशिक तौर पर डिप्लॉयमेंट के लिए उपलब्ध सेवाओं और सुविधाओं की सूची दी गई है. फ़्लैग में दिए गए नाम, आपकी firebase.json कॉन्फ़िगरेशन फ़ाइल में मौजूद कुंजियों से मेल खाते हैं.

फ़्लैग सिंटैक्स सेवा या सुविधा को डिप्लॉय किया गया है
--only hosting Firebase Hosting कॉन्टेंट
--only database Firebase Realtime Database नियम
--only dataconnect Firebase Data Connect स्कीमा और कनेक्टर
--only storage Cloud Storage for Firebase नियम
--only firestore कॉन्फ़िगर किए गए सभी डेटाबेस के लिए Cloud Firestore नियम और इंडेक्स
--only functions Cloud Functions for Firebase (इस फ़्लैग के ज़्यादा सटीक वर्शन उपलब्ध हैं)

खास फ़ंक्शन डिप्लॉय करना

फ़ंक्शन डिप्लॉय करते समय, किसी खास फ़ंक्शन को टारगेट किया जा सकता है. उदाहरण के लिए:

firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2

दूसरा विकल्प यह है कि अपनी /functions/index.js फ़ाइल में, फ़ंक्शन को एक्सपोर्ट ग्रुप में ग्रुप किया जाए. ग्रुपिंग फ़ंक्शन की मदद से, एक ही निर्देश का इस्तेमाल करके कई फ़ंक्शन लागू किए जा सकते हैं.

उदाहरण के लिए, groupA और groupB को तय करने के लिए, यहां दिए गए फ़ंक्शन लिखे जा सकते हैं:

var functions = require('firebase-functions/v1');

exports.groupA = {
  function1: functions.https.onRequest(...),
  function2: functions.database.ref('\path').onWrite(...)
}
exports.groupB = require('./groupB');

इस उदाहरण में, एक अलग functions/groupB.js फ़ाइल में अतिरिक्त फ़ंक्शन शामिल हैं. ये फ़ंक्शन, खास तौर पर groupB में मौजूद फ़ंक्शन के बारे में बताते हैं. उदाहरण के लिए:

var functions = require('firebase-functions/v1');

exports.function3 = functions.storage.object().onChange(...);
exports.function4 = functions.analytics.event('in_app_purchase').onLog(...);

इस उदाहरण में, अपनी प्रोजेक्ट डायरेक्ट्री से यह कमांड चलाकर, सभी groupA फ़ंक्शन डिप्लॉय किए जा सकते हैं:

firebase deploy --only functions:groupA

इसके अलावा, किसी ग्रुप में मौजूद किसी फ़ंक्शन को टारगेट करने के लिए, यह कमांड चलाएं:

firebase deploy --only functions:groupA.function1,groupB.function4

फ़ंक्शन मिटाना

Firebase CLI, पहले से डिप्लॉय किए गए फ़ंक्शन को मिटाने के लिए, यहां दिए गए कमांड और विकल्पों के साथ काम करता है:

  • यह कमांड, सभी इलाकों में मौजूद उस नाम के सभी फ़ंक्शन मिटा देती है:

    firebase functions:delete FUNCTION-1_NAME

  • यह फ़ंक्शन, किसी ऐसे फ़ंक्शन को मिटाता है जो डिफ़ॉल्ट क्षेत्र के अलावा किसी अन्य क्षेत्र में चल रहा है:

    firebase functions:delete FUNCTION-1_NAME --region REGION_NAME

  • एक से ज़्यादा फ़ंक्शन मिटाता है:

    firebase functions:delete FUNCTION-1_NAME FUNCTION-2_NAME

  • यह फ़ंक्शन, तय किए गए फ़ंक्शन ग्रुप को मिटाता है:

    firebase functions:delete GROUP_NAME

  • पुष्टि करने के लिए दिखने वाले प्रॉम्प्ट को बायपास करता है:

    firebase functions:delete FUNCTION-1_NAME --force

डिप्लॉयमेंट से पहले और बाद में स्क्रिप्ट किए गए टास्क सेट अप करना

शेल स्क्रिप्ट को firebase deploy कमांड से कनेक्ट किया जा सकता है, ताकि डिप्लॉयमेंट से पहले या बाद में टास्क पूरे किए जा सकें. उदाहरण के लिए, प्रीडिप्लॉय स्क्रिप्ट, TypeScript कोड को JavaScript में ट्रांसपाइल कर सकती है. वहीं, पोस्टडिप्लॉय हुक, एडमिन को नई साइट के कॉन्टेंट को Firebase Hosting पर डिप्लॉय करने के बारे में सूचना दे सकता है.

प्रीडिप्लॉय या पोस्टडिप्लॉय हुक सेट अप करने के लिए, अपनी firebase.json कॉन्फ़िगरेशन फ़ाइल में बैश स्क्रिप्ट जोड़ें. firebase.json फ़ाइल में सीधे तौर पर छोटी स्क्रिप्ट तय की जा सकती हैं. इसके अलावा, अपनी प्रोजेक्ट डायरेक्ट्री में मौजूद अन्य फ़ाइलों का रेफ़रंस भी दिया जा सकता है.

उदाहरण के लिए, यहां दी गई स्क्रिप्ट, firebase.json में डिप्लॉयमेंट के बाद के टास्क के लिए एक्सप्रेशन है. यह टास्क, Firebase Hosting में डिप्लॉयमेंट पूरा होने पर Slack पर एक मैसेज भेजता है.

"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 हुक ट्रिगर नहीं होते हैं.

एनवायरमेंट वैरिएबल

प्रीडिप्लॉय और पोस्टडिप्लॉय हुक में चलने वाली स्क्रिप्ट में, ये एनवायरमेंट वैरिएबल उपलब्ध होते हैं:

  • $GCLOUD_PROJECT: ऐक्टिव प्रोजेक्ट का प्रोजेक्ट आईडी
  • $PROJECT_DIR: वह रूट डायरेक्ट्री जिसमें firebase.json फ़ाइल मौजूद है
  • $RESOURCE_DIR: (सिर्फ़ hosting और functions स्क्रिप्ट के लिए) यह उस डायरेक्ट्री की जगह है जिसमें डिप्लॉय किए जाने वाले Hosting या Cloud Functions संसाधन मौजूद हैं

एक से ज़्यादा Realtime Database इंस्टेंस मैनेज करना

एक Firebase प्रोजेक्ट में कई Firebase Realtime Database इंस्टेंस हो सकते हैं. डिफ़ॉल्ट रूप से, सीएलआई कमांड आपके डिफ़ॉल्ट डेटाबेस इंस्टेंस के साथ इंटरैक्ट करती हैं.

हालांकि, --instance DATABASE_NAME फ़्लैग का इस्तेमाल करके, डिफ़ॉल्ट नहीं है ऐसे डेटाबेस इंस्टेंस के साथ इंटरैक्ट किया जा सकता है. --instance फ़्लैग के साथ इन कमांड का इस्तेमाल किया जा सकता है:

  • firebase database:get
  • firebase database:profile
  • firebase database:push
  • firebase database:remove
  • firebase database:set
  • firebase database:update

कमांड रेफ़रंस

सीएलआई के एडमिन से जुड़े निर्देश

आदेश ब्यौरा
सहायता सीएलआई या खास कमांड के बारे में सहायता से जुड़ी जानकारी दिखाता है.
init यह कमांड, मौजूदा डायरेक्ट्री में एक नया Firebase प्रोजेक्ट जोड़ती है और उसे सेट अप करती है. इस कमांड से, मौजूदा डायरेक्ट्री में firebase.json कॉन्फ़िगरेशन फ़ाइल बनती है.
login इस कमांड से, आपके Google खाते के ज़रिए सीएलआई की पुष्टि की जाती है. इसके लिए, वेब ब्राउज़र का ऐक्सेस ज़रूरी है.
ऐसे रिमोट एनवायरमेंट में सीएलआई में लॉग इन करने के लिए जहां localhost को ऐक्सेस करने की अनुमति नहीं है, --no-localhost फ़्लैग का इस्तेमाल करें.
login:ci यह कुकी, बिना किसी इंटरैक्शन वाले एनवायरमेंट में इस्तेमाल करने के लिए, पुष्टि करने वाला टोकन जनरेट करती है.
login:add यह कुकी, किसी दूसरे Google खाते में लॉग इन करती है.
login:list यह कुकी, पुष्टि किए गए सभी Google खातों की सूची बनाती है.
login:use यह कुकी, चालू Google खाते को सेट करती है.
logout इस कमांड से, सीएलआई में मौजूद आपके Google खाते से साइन आउट हो जाता है.
open इससे ब्राउज़र में, प्रोजेक्ट से जुड़े काम के संसाधन खुलते हैं.
projects:list इसमें उन सभी Firebase प्रोजेक्ट की सूची होती है जिन्हें ऐक्सेस किया जा सकता है.
इस्तेमाल करें इस कमांड से, CLI के लिए चालू Firebase प्रोजेक्ट सेट किया जाता है.
प्रोजेक्ट के उपनाम मैनेज करता है.

प्रोजेक्ट मैनेजमेंट से जुड़े निर्देश

आदेश ब्यौरा
Firebase प्रोजेक्ट मैनेज करना
projects:addfirebase इस कमांड से, मौजूदा Google Cloud प्रोजेक्ट में Firebase संसाधन जोड़े जाते हैं.
projects:create यह एक नया Google Cloud प्रोजेक्ट बनाता है. इसके बाद, नए प्रोजेक्ट में Firebase संसाधन जोड़ता है.
projects:list इसमें उन सभी Firebase प्रोजेक्ट की सूची होती है जिन्हें ऐक्सेस किया जा सकता है.
Firebase ऐप्लिकेशन (iOS, Android, वेब) मैनेज करना
apps:create इस कमांड से, चालू प्रोजेक्ट में एक नया Firebase ऐप्लिकेशन बनाया जाता है.
apps:list इस कुकी में, चालू प्रोजेक्ट में रजिस्टर किए गए Firebase ऐप्लिकेशन की सूची होती है.
apps:sdkconfig यह कमांड, Firebase ऐप्लिकेशन के Google सेवाओं के कॉन्फ़िगरेशन को प्रिंट करती है.
setup:web अब सेवा में नहीं है. इसके बजाय, apps:sdkconfig का इस्तेमाल करें और प्लैटफ़ॉर्म के आर्ग्युमेंट के तौर पर web तय करें.
यह Firebase वेब ऐप्लिकेशन के Google सेवाओं के कॉन्फ़िगरेशन को प्रिंट करता है.
SHA सर्टिफ़िकेट हैश मैनेज करना (सिर्फ़ Android के लिए)
apps:android:sha:create \
FIREBASE_APP_ID SHA_HASH
यह फ़ंक्शन, दिए गए SHA सर्टिफ़िकेट हैश को दिए गए Firebase Android ऐप्लिकेशन में जोड़ता है.
apps:android:sha:delete \
FIREBASE_APP_ID SHA_HASH
इस तरीके से, Firebase Android ऐप्लिकेशन से SHA सर्टिफ़िकेट हैश मिटाया जाता है.
apps:android:sha:list \
FIREBASE_APP_ID
इस कमांड से, दिए गए Firebase Android ऐप्लिकेशन के लिए SHA सर्टिफ़िकेट हैश की सूची मिलती है.

डिप्लॉयमेंट और लोकल डेवलपमेंट

इन कमांड की मदद से, 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
यह किसी बैकएंड की खास जानकारी दिखाता है. इसमें सार्वजनिक यूआरएल भी शामिल है.
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_ID \
--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 <region name> का इस्तेमाल करके, डेटाबेस को डिप्लॉय करने की जगह तय करें. ध्यान दें कि उपलब्ध जगहों की सूची देखने के लिए, firebase firestore:locations कमांड का इस्तेमाल किया जा सकता है. ज़रूरी है.
  • --delete-protection <deleteProtectionState> का इस्तेमाल करके, चुने गए डेटाबेस को मिटाने की अनुमति दी जा सकती है या उसे मिटाने से रोका जा सकता है. ENABLED या DISABLED को वैल्यू के तौर पर इस्तेमाल किया जा सकता है. डिफ़ॉल्ट रूप से, यह DISABLED पर सेट होता है.
  • --point-in-time-recovery <PITRState> का इस्तेमाल करके, यह सेट किया जा सकता है कि पिछले समय की रिकवरी की सुविधा चालू है या नहीं. ENABLED या DISABLED को वैल्यू के तौर पर इस्तेमाल किया जा सकता है. डिफ़ॉल्ट रूप से, यह DISABLED पर सेट होता है. ज़रूरी नहीं.
firestore:databases:list

अपने Firebase प्रोजेक्ट में डेटाबेस की सूची बनाएं.

firestore:databases:get DATABASE_ID

अपने Firebase प्रोजेक्ट में मौजूद किसी डेटाबेस के लिए, डेटाबेस कॉन्फ़िगरेशन पाएं.

firestore:databases:update DATABASE_ID

आपके Firebase प्रोजेक्ट में मौजूद किसी डेटाबेस के डेटाबेस कॉन्फ़िगरेशन को अपडेट करता है.

कम से कम एक फ़्लैग होना ज़रूरी है. इस कमांड में ये फ़्लैग इस्तेमाल किए जाते हैं:

  • --delete-protection <deleteProtectionState> का इस्तेमाल करके, चुने गए डेटाबेस को मिटाने की अनुमति दी जा सकती है या उसे मिटाने से रोका जा सकता है. ENABLED या DISABLED को वैल्यू के तौर पर इस्तेमाल किया जा सकता है. डिफ़ॉल्ट रूप से, यह DISABLED पर सेट होता है.
  • --point-in-time-recovery <PITRState> का इस्तेमाल करके, यह सेट किया जा सकता है कि पिछले समय की रिकवरी की सुविधा चालू है या नहीं. ENABLED या DISABLED को वैल्यू के तौर पर इस्तेमाल किया जा सकता है. डिफ़ॉल्ट रूप से, यह DISABLED पर सेट होता है. ज़रूरी नहीं.
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 रिसॉर्स (एक्सएमएल) फ़ाइल में, यूनीक मैपिंग फ़ाइल आईडी जनरेट करता है.
crashlytics:mappingfile:upload \
--app=FIREBASE_APP_ID \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML \
PATH/TO/MAPPING_FILE.TXT
इस ऐप्लिकेशन के लिए, Proguard के साथ काम करने वाली मैपिंग (TXT) फ़ाइल अपलोड करता है. साथ ही, इसे बताई गई Android रिसॉर्स (एक्सएमएल) फ़ाइल में बताए गए मैपिंग फ़ाइल आईडी से जोड़ता है.
crashlytics:symbols:upload \
--app=FIREBASE_APP_ID \
PATH/TO/SYMBOLS
यह Android पर नेटिव लाइब्रेरी क्रैश के लिए, Crashlytics के साथ काम करने वाली सिंबल फ़ाइल जनरेट करता है. साथ ही, इसे Firebase सर्वर पर अपलोड करता है.

Data Connect निर्देश

इन कमांड और उनके इस्तेमाल के उदाहरणों के बारे में ज़्यादा जानकारी, Data Connect सीएलआई रेफ़रंस गाइड में दी गई है.

आदेश ब्यौरा
dataconnect:services:list आपके Firebase प्रोजेक्ट में डिप्लॉय की गई सभी Data Connect सेवाओं की सूची दिखाता है.
dataconnect:sql:diff \
SERVICE_ID
चुनी गई सेवा के लिए, यह लोकल Data Connect स्कीमा और Cloud SQL डेटाबेस स्कीमा के बीच अंतर दिखाता है.
dataconnect:sql:migrate \
--force \
SERVICE_ID
यह आपके Cloud SQL डेटाबेस के स्कीमा को माइग्रेट करके, आपके लोकल Data Connect स्कीमा से मैच करता है.
dataconnect:sql:grant\
--role=ROLE \
--email=EMAIL \
SERVICE_ID
यह विकल्प, चुने गए उपयोगकर्ता या सेवा खाते के ईमेल पते को SQL भूमिका असाइन करता है. --role फ़्लैग के लिए, दी जाने वाली एसक्यूएल भूमिका इनमें से कोई एक होनी चाहिए: owner, writer या reader.

--email फ़्लैग के लिए, उस उपयोगकर्ता या सेवा खाते का ईमेल पता दें जिसे भूमिका असाइन करनी है.
dataconnect:sdk:generate यह आपके Data 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 यह कुकी, फ़ंक्शन में एक्सटेंशन तय करने के लिए एसडीके इंस्टॉल करती है.
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 प्रोजेक्ट के लिए, Firebase Hosting का ट्रैफ़िक दिखाना बंद कर देता है.

इस कमांड को चलाने के बाद, आपके प्रोजेक्ट के Hosting यूआरएल पर "साइट नहीं मिली" मैसेज दिखेगा.

Hosting साइटों का मैनेजमेंट
firebase hosting:sites:create \
SITE_ID

यह सक्रिय Firebase प्रोजेक्ट में, बताई गई SITE_ID का इस्तेमाल करके नई Hosting साइट बनाता है

(ज़रूरी नहीं) नए साइट से जोड़ने के लिए, मौजूदा Firebase वेब ऐप्लिकेशन के बारे में बताएं. इसके लिए, यह फ़्लैग पास करें: --app FIREBASE_APP_ID

firebase hosting:sites:delete \
SITE_ID

यह कमांड, बताई गई Hosting साइट को मिटा देती है

साइट को मिटाने से पहले, CLI में पुष्टि करने का अनुरोध दिखता है.

(ज़रूरी नहीं) पुष्टि करने वाले प्रॉम्प्ट को स्किप करने के लिए, यहां दिए गए फ़्लैग पास करें: -f या --force

firebase hosting:sites:get \
SITE_ID

यह फ़ंक्शन, दी गई Hosting साइट के बारे में जानकारी देता है

firebase hosting:sites:list

चालू Firebase प्रोजेक्ट के लिए सभी Hosting साइटों की सूची दिखाता है

प्रीव्यू चैनल मैनेज करना
firebase hosting:channel:create \
CHANNEL_ID

यह फ़ंक्शन, बताई गई CHANNEL_ID का इस्तेमाल करके, default Hosting साइट में एक नया प्रीव्यू चैनल बनाता है

इस निर्देश को चैनल पर लागू नहीं किया जाता.

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
यह फ़ंक्शन, ब्राउज़र में बताए गए चैनल का यूआरएल खोलता है. अगर ब्राउज़र में यूआरएल नहीं खोला जा सकता, तो यह फ़ंक्शन यूआरएल दिखाता है
वर्शन क्लोन करना
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

यह कमांड, "सोर्स" चैनल पर हाल ही में डिप्लॉय किए गए वर्शन को, "टारगेट" चैनल पर क्लोन करती है

इस कमांड का इस्तेमाल करके, "टारगेट" चैनल पर भी डिप्लॉय किया जा सकता है. अगर "target" चैनल अभी तक मौजूद नहीं है, तो यह निर्देश, चैनल पर डिप्लॉय करने से पहले "target" Hosting साइट में एक नया प्रीव्यू चैनल बनाता है.

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

यह कमांड, चुने गए वर्शन को चुने गए "टारगेट" चैनल पर क्लोन करती है

इस कमांड का इस्तेमाल करके, "टारगेट" चैनल पर भी डिप्लॉय किया जा सकता है. अगर "target" चैनल अभी तक मौजूद नहीं है, तो यह निर्देश, चैनल पर डिप्लॉय करने से पहले "target" Hosting साइट में एक नया प्रीव्यू चैनल बनाता है.

आपको VERSION_ID, Firebase कंसोल के Hosting डैशबोर्ड में दिखेगा.

Realtime Database निर्देश

ध्यान दें कि Realtime Database का शुरुआती, डिफ़ॉल्ट इंस्टेंस, Firebase कंसोल में बनाया जा सकता है. इसके अलावा, सामान्य firebase init वर्कफ़्लो या खास firebase init database फ़्लो का इस्तेमाल करके भी इसे बनाया जा सकता है.

इंस्टेंस बनाने के बाद, उन्हें मैनेज किया जा सकता है. इसके बारे में एक से ज़्यादा Realtime Database इंस्टेंस मैनेज करना लेख में बताया गया है.

आदेश ब्यौरा
database:get यह फ़ंक्शन, चालू प्रोजेक्ट के डेटाबेस से डेटा फ़ेच करता है और उसे JSON के तौर पर दिखाता है. यह इंडेक्स किए गए डेटा पर क्वेरी करने की सुविधा देता है.
database:instances:create यह कमांड, दिए गए इंस्टेंस के नाम से डेटाबेस इंस्टेंस बनाती है. यह विकल्प, किसी तय किए गए क्षेत्र में डेटाबेस बनाने के लिए --location विकल्प को स्वीकार करता है. इस विकल्प के साथ इस्तेमाल किए जाने वाले इलाके के नामों के लिए, अपने प्रोजेक्ट के लिए जगहें चुनना लेख पढ़ें. अगर मौजूदा प्रोजेक्ट के लिए कोई डेटाबेस इंस्टेंस मौजूद नहीं है, तो आपको इंस्टेंस बनाने के लिए firebase init फ़्लो चलाने के लिए कहा जाएगा.
database:instances:list इस प्रोजेक्ट के सभी डेटाबेस इंस्टेंस की सूची बनाएं. यह किसी खास इलाके में डेटाबेस की सूची बनाने के लिए, --location विकल्प को स्वीकार करता है. इस विकल्प के साथ इस्तेमाल किए जाने वाले इलाके के नामों के लिए, अपने प्रोजेक्ट के लिए जगहें चुनना लेख पढ़ें.
database:profile यह कुकी, ऐक्टिव प्रोजेक्ट के डेटाबेस पर होने वाले ऑपरेशनों की प्रोफ़ाइल बनाती है. ज़्यादा जानकारी के लिए, 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 रोलआउट को मिटाता है.