Firebase सीएलआई (GitHub) कई तरह के टूल उपलब्ध कराता है. इनका इस्तेमाल Firebase प्रोजेक्ट को मैनेज करने, देखने, और डिप्लॉय करने के लिए किया जाता है.
Firebase सीएलआई का इस्तेमाल करने से पहले, Firebase प्रोजेक्ट सेट अप करें.
सीएलआई को सेट अप या अपडेट करें
Firebase सीएलआई इंस्टॉल करें
Firebase सीएलआई को इंस्टॉल करने के लिए ऐसा तरीका इस्तेमाल किया जा सकता है जो आपके ऑपरेटिंग सिस्टम, अनुभव के लेवल, और/या इस्तेमाल के उदाहरण से मेल खाता हो. आप चाहे सीएलआई को किसी भी तरह इंस्टॉल करें, आपके पास उसी फ़ंक्शन और firebase
कमांड का ऐक्सेस होता है.
Windows
इनमें से किसी एक विकल्प का इस्तेमाल करके, Windows के लिए Firebase सीएलआई इंस्टॉल किया जा सकता है:
विकल्प | जानकारी | इन वजहों से इसका सुझाव दिया जाता है... |
---|---|---|
स्टैंडअलोन बाइनरी | सीएलआई के लिए स्टैंडअलोन बाइनरी डाउनलोड करें. इसके बाद, एक शेल खोलने के लिए
एक्ज़ीक्यूटेबल को ऐक्सेस किया जा सकता है, जहां
firebase कमांड चलाया जा सकता है.
|
नए डेवलपर ऐसे डेवलपर जो Node.js का इस्तेमाल नहीं करते या जिनके बारे में उन्हें जानकारी नहीं है |
एनपीएम | सीएलआई को इंस्टॉल करने और दुनिया भर में उपलब्ध firebase कमांड
को चालू करने के लिए, एनपीएम (नोड पैकेज मैनेजर) का इस्तेमाल करें.
|
Node.js का इस्तेमाल करने वाले डेवलपर |
स्टैंडअलोन बाइनरी
Firebase सीएलआई के लिए बाइनरी को डाउनलोड करने और चलाने के लिए, यह तरीका अपनाएं:
Windows के लिए Firebase सीएलआई बाइनरी डाउनलोड करें.
शेल खोलने के लिए बाइनरी को ऐक्सेस करें, जहां से
firebase
कमांड को चलाया जा सके.लॉग इन करने और सीएलआई की जांच करने के लिए जारी रखें.
एनपीएम
Firebase सीएलआई इंस्टॉल करने के लिए npm
(नोड पैकेज मैनेजर) का इस्तेमाल करने के लिए, यह तरीका अपनाएं:
nvm-Windows (नोड वर्शन मैनेजर) का इस्तेमाल करके Node.js इंस्टॉल करें. Node.js को इंस्टॉल करने से
npm
कमांड टूल अपने-आप इंस्टॉल हो जाता है.यह निर्देश चलाकर,
npm
से Firebase सीएलआई इंस्टॉल करें:npm install -g firebase-tools
इस निर्देश से, दुनिया भर में उपलब्ध
firebase
कमांड चालू हो जाती है.लॉग इन करने और सीएलआई की जांच करने के लिए जारी रखें.
macOS या Linux
इनमें से किसी एक विकल्प का इस्तेमाल करके, macOS या Linux के लिए, Firebase सीएलआई इंस्टॉल किया जा सकता है:
विकल्प | जानकारी | इन वजहों से इसका सुझाव दिया जाता है... |
---|---|---|
स्क्रिप्ट अपने-आप इंस्टॉल होने की सुविधा | एक निर्देश चलाएं, जो आपके ऑपरेटिंग सिस्टम का अपने-आप पता लगा लेता है.
इसके बाद, नया सीएलआई रिलीज़ डाउनलोड होता है और फिर दुनिया भर में उपलब्ध
firebase कमांड चालू हो जाता है.
|
नए डेवलपर ऐसे डेवलपर जो Node.js का इस्तेमाल नहीं करते या जिनके बारे में उन्हें जानकारी नहीं है CI/CD एनवायरमेंट में अपने-आप डिप्लॉयमेंट |
स्टैंडअलोन बाइनरी | सीएलआई के लिए स्टैंडअलोन बाइनरी डाउनलोड करें. इसके बाद, अपने वर्कफ़्लो के हिसाब से बाइनरी को कॉन्फ़िगर करें और चलाएं. | सीएलआई का इस्तेमाल करके, पूरी तरह से पसंद के मुताबिक वर्कफ़्लो |
एनपीएम | सीएलआई को इंस्टॉल करने और दुनिया भर में उपलब्ध firebase कमांड
को चालू करने के लिए, एनपीएम (नोड पैकेज मैनेजर) का इस्तेमाल करें.
|
Node.js का इस्तेमाल करने वाले डेवलपर |
स्क्रिप्ट अपने-आप इंस्टॉल होने की सुविधा
अपने-आप इंस्टॉल होने की स्क्रिप्ट का इस्तेमाल करके, Firebase सीएलआई इंस्टॉल करने के लिए, यह तरीका अपनाएं:
यह cURL निर्देश चलाएं:
curl -sL https://firebase.tools | bash
यह स्क्रिप्ट, आपके ऑपरेटिंग सिस्टम का अपने-आप पता लगाती है और Firebase सीएलआई का नया वर्शन डाउनलोड करती है. इसके बाद, यह स्क्रिप्ट दुनिया भर में उपलब्ध
firebase
कमांड को चालू करती है.लॉग इन करने और सीएलआई की जांच करने के लिए जारी रखें.
अपने-आप इंस्टॉल होने की स्क्रिप्ट के बारे में ज़्यादा उदाहरण और जानकारी के लिए, firebase.tools पर स्क्रिप्ट का सोर्स कोड देखें.
स्टैंडअलोन बाइनरी
अपने ओएस के लिए, खास तौर पर Firebase सीएलआई के लिए बाइनरी को डाउनलोड करने और चलाने के लिए, यह तरीका अपनाएं:
अपने OS के लिए, Firebase सीएलआई बाइनरी डाउनलोड करें: macOS | Linux
(ज़रूरी नहीं) दुनिया भर में उपलब्ध
firebase
कमांड सेट अप करें.chmod +x ./firebase_tools
चलाकर, बाइनरी को एक्ज़ीक्यूटेबल बनाएं.- अपने PATH में बाइनरी का पाथ जोड़ें.
लॉग इन करने और सीएलआई की जांच करने के लिए जारी रखें.
एनपीएम
Firebase सीएलआई इंस्टॉल करने के लिए npm
(नोड पैकेज मैनेजर) का इस्तेमाल करने के लिए, यह तरीका अपनाएं:
nvm (नोड वर्शन मैनेजर) का इस्तेमाल करके Node.js इंस्टॉल करें.
Node.js इंस्टॉल करने सेnpm
कमांड टूल अपने-आप इंस्टॉल हो जाते हैं.यह निर्देश चलाकर,
npm
से Firebase सीएलआई इंस्टॉल करें:npm install -g firebase-tools
इस निर्देश से, दुनिया भर में उपलब्ध
firebase
कमांड चालू हो जाती है.लॉग इन करने और सीएलआई की जांच करने के लिए जारी रखें.
लॉग इन करें और Firebase सीएलआई की जांच करें
सीएलआई इंस्टॉल करने के बाद, आपको पुष्टि करनी होगी. इसके बाद, Firebase प्रोजेक्ट की सूची बनाकर पुष्टि की जा सकती है.
इस कमांड का इस्तेमाल करके, अपने Google खाते से Firebase में लॉग इन करें:
firebase login
यह निर्देश आपकी लोकल मशीन को Firebase से जोड़ता है और आपको Firebase प्रोजेक्ट का ऐक्सेस देता है.
अपने Firebase प्रोजेक्ट की सूची बनाकर जांच करें कि सीएलआई सही तरीके से इंस्टॉल है और आपका खाता ऐक्सेस कर रहा है. नीचे दिया गया निर्देश चलाएं:
firebase projects:list
दिखाई गई सूची, Firebase कंसोल में मौजूद Firebase प्रोजेक्ट जैसी होनी चाहिए.
सबसे नए सीएलआई वर्शन पर अपडेट करें
आम तौर पर, आपको Firebase के सबसे अप-टू-डेट सीएलआई वर्शन का इस्तेमाल करना होता है.
सीएलआई वर्शन को अपडेट करने का तरीका, आपके ऑपरेटिंग सिस्टम और सीएलआई को इंस्टॉल करने के तरीके पर निर्भर करता है.
शीशा
- स्टैंडअलोन बाइनरी: नया वर्शन डाउनलोड करें. इसके बाद, इसे अपने सिस्टम पर बदलें
- npm:
npm install -g firebase-tools
चलाएं
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 सीएलआई इंस्टॉल करें.
निम्न आदेश चलाकर साइन इन प्रक्रिया प्रारंभ करें:
firebase login:ci
दिए गए यूआरएल पर जाएँ, फिर Google खाते का इस्तेमाल करके लॉग इन करें.
नया रीफ़्रेश टोकन प्रिंट करें. मौजूदा सीएलआई सेशन पर इसका कोई असर नहीं होगा.
आउटपुट टोकन को अपने सीआई सिस्टम में सुरक्षित, लेकिन ऐक्सेस करने लायक तरीके से स्टोर करें.
firebase
निर्देश चलाते समय इस टोकन का इस्तेमाल करें. इनमें से किसी एक विकल्प का इस्तेमाल किया जा सकता है:पहला विकल्प: टोकन को एनवायरमेंट वैरिएबल के तौर पर सेव करें
FIREBASE_TOKEN
. आपका सिस्टम अपने-आप टोकन का इस्तेमाल करेगा.दूसरा विकल्प: अपने सीआई सिस्टम में,
--token TOKEN
फ़्लैग के साथ सभीfirebase
कमांड चलाएं.
टोकन लोड होने के लिए इस क्रम में प्राथमिकता दी जाती है: फ़्लैग, एनवायरमेंट वैरिएबल, पसंदीदा Firebase प्रोजेक्ट.
Firebase प्रोजेक्ट शुरू करना
सीएलआई का इस्तेमाल करके किए जाने वाले कई सामान्य कामों के लिए प्रोजेक्ट डायरेक्ट्री की ज़रूरत होती है, जैसे कि Firebase प्रोजेक्ट में डिप्लॉय करना. firebase init
कमांड का इस्तेमाल करके, प्रोजेक्ट डायरेक्ट्री बनाई जाती है. प्रोजेक्ट डायरेक्ट्री आम तौर पर वही डायरेक्ट्री होती है जो आपके सोर्स कंट्रोल रूट की होती है. firebase init
चलाने के बाद, डायरेक्ट्री में firebase.json
कॉन्फ़िगरेशन फ़ाइल होती है.
कोई नया Firebase प्रोजेक्ट शुरू करने के लिए, अपने ऐप्लिकेशन की डायरेक्ट्री से यह कमांड चलाएं:
firebase init
firebase init
कमांड से, आपको अपनी प्रोजेक्ट डायरेक्ट्री और कुछ Firebase प्रॉडक्ट सेट अप करने का तरीका पता चलता है. प्रोजेक्ट शुरू करने के दौरान, Firebase सीएलआई आपसे ये टास्क पूरे करने के लिए कहता है:
अपने Firebase प्रोजेक्ट में सेट अप करने के लिए, अपनी पसंद के Firebase प्रॉडक्ट चुनें.
इस चरण में, आपको चुने गए प्रॉडक्ट की खास फ़ाइलों के लिए कॉन्फ़िगरेशन सेट करने के लिए कहा जाता है. इन कॉन्फ़िगरेशन के बारे में ज़्यादा जानकारी के लिए, किसी खास प्रॉडक्ट के दस्तावेज़ देखें (उदाहरण के लिए, होस्टिंग). ध्यान दें कि ज़्यादा Firebase प्रॉडक्ट सेट अप करने के लिए,
firebase init
को बाद में कभी भी चलाया जा सकता है.डिफ़ॉल्ट Firebase प्रोजेक्ट चुनें.
यह चरण मौजूदा प्रोजेक्ट डायरेक्ट्री को Firebase प्रोजेक्ट से जोड़ता है. इससे प्रोजेक्ट के हिसाब से निर्देश (जैसे कि
firebase deploy
) सही Firebase प्रोजेक्ट पर चलते हैं.एक ही प्रोजेक्ट डायरेक्ट्री के साथ एक से ज़्यादा Firebase प्रोजेक्ट (जैसे कि स्टेजिंग प्रोजेक्ट और प्रोडक्शन प्रोजेक्ट) भी जोड़े जा सकते हैं.
शुरू करने की प्रोसेस के आखिर में, Firebase आपकी लोकल ऐप्लिकेशन डायरेक्ट्री के रूट में अपने-आप ये दो फ़ाइलें बना देता है:
एक
firebase.json
कॉन्फ़िगरेशन फ़ाइल, जिसमें आपके प्रोजेक्ट के कॉन्फ़िगरेशन की सूची होती है.ऐसी
.firebaserc
फ़ाइल जिसमें आपके प्रोजेक्ट के उपनाम सेव किए जाते हैं.
firebase.json
फ़ाइल
firebase init
निर्देश आपकी प्रोजेक्ट डायरेक्ट्री के रूट में एक firebase.json
कॉन्फ़िगरेशन फ़ाइल बनाता है.
Firebase सीएलआई की मदद से ऐसेट डिप्लॉय करने के लिए, firebase.json
फ़ाइल की ज़रूरत होती है, क्योंकि इससे पता चलता है कि आपकी प्रोजेक्ट डायरेक्ट्री की कौनसी फ़ाइलें और सेटिंग आपके Firebase प्रोजेक्ट में डिप्लॉय की गई हैं. कुछ सेटिंग आपकी प्रोजेक्ट डायरेक्ट्री या Firebase कंसोल में तय की जा सकती हैं. इसलिए, पक्का करें कि आपने सभी संभावित डिप्लॉयमेंट से जुड़े विवादों को हल कर लिया है.
Firebase होस्टिंग के ज़्यादातर विकल्पों को कॉन्फ़िगर किया जा सकता है. ऐसा, सीधे firebase.json
फ़ाइल में किया जा सकता है. हालांकि, Firebase सीएलआई के साथ डिप्लॉय की जा सकने वाली अन्य Firebase सेवाओं के लिए, firebase init
कमांड खास फ़ाइलें बनाता है. इन सेवाओं के लिए सेटिंग तय की जा सकती है, जैसे कि Cloud Functions के लिए index.js
फ़ाइल. आपके पास
firebase.json
फ़ाइल में, preनियोजित या postDeploy हुक सेट अप करने का भी विकल्प है.
अगर आपने शुरू करने के दौरान Firebase होस्टिंग, Cloud Firestore, और Cloud Functions (चुने गए TypeScript सोर्स और लिंट विकल्पों के साथ) को चुना है, तो डिफ़ॉल्ट सेटिंग वाली firebase.json
फ़ाइल का उदाहरण नीचे दिया गया है.
{
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
},
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"functions": {
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
}
}
firebase.json
का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है. हालांकि, कोई दूसरी कॉन्फ़िगरेशन फ़ाइल तय करने के लिए, --config PATH
फ़्लैग को पास किया जा सकता है.
Cloud Firestore के एक से ज़्यादा डेटाबेस के लिए कॉन्फ़िगरेशन
firebase init
चलाने पर, आपकी firebase.json
फ़ाइल में आपके प्रोजेक्ट के डिफ़ॉल्ट डेटाबेस से जुड़ी एक firestore
कुंजी होगी, जैसा कि ऊपर दिखाया गया है.
अगर आपके प्रोजेक्ट में एक से ज़्यादा Cloud Firestore डेटाबेस हैं, तो हर डेटाबेस के साथ अलग-अलग Cloud Firestore सुरक्षा नियमों और
डेटाबेस इंडेक्स सोर्स फ़ाइलों को जोड़ने के लिए, अपनी firebase.json
फ़ाइल में बदलाव करें. 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 \ |
सभी कमांड को बताए गए Firebase प्रोजेक्ट पर चलाने के लिए भेजता है.
सीएलआई इस प्रोजेक्ट का इस्तेमाल, फ़िलहाल "ऐक्टिव प्रोजेक्ट" के तौर पर करता है. |
firebase use --clear |
सक्रिय प्रोजेक्ट को हटा देता है.
अन्य सीएलआई कमांड चलाने से पहले, एक नया ऐक्टिव प्रोजेक्ट सेट करने के लिए |
firebase use \ |
आपकी प्रोजेक्ट डायरेक्ट्री से कोई उपनाम हटाता है. |
किसी सीएलआई कमांड के साथ --project
फ़्लैग को पास करके, मौजूदा प्रोजेक्ट के तौर पर इस्तेमाल हो रहे प्रोजेक्ट को बदला जा सकता है. उदाहरण के लिए: अपने सीएलआई को उस Firebase प्रोजेक्ट के साथ चलाने के लिए सेट किया जा सकता है जिसे आपने staging
उपनाम असाइन किए हैं. अगर आपको उस Firebase प्रोजेक्ट के लिए एक ही निर्देश चलाना है जिसे आपने prod
उपनाम असाइन किया है, तो उदाहरण के लिए,
को चलाया जा सकता है.
सोर्स कंट्रोल और प्रोजेक्ट के अन्य नाम
अपनी टीम को प्रोजेक्ट उपनाम शेयर करने की अनुमति देने के लिए, आम तौर पर आपको सोर्स कंट्रोल में अपनी .firebaserc
फ़ाइल की जांच करनी चाहिए. हालांकि, ओपन सोर्स प्रोजेक्ट या स्टार्टर टेंप्लेट के लिए, आपको आम तौर पर अपनी .firebaserc
फ़ाइल में जांच नहीं करनी चाहिए.
अगर आपके पास कोई ऐसा डेवलपमेंट प्रोजेक्ट है जो सिर्फ़ आपके इस्तेमाल के लिए है, तो हर निर्देश के साथ --project
फ़्लैग को पास किया जा सकता है या Firebase प्रोजेक्ट को कोई उपनाम दिए बिना firebase use PROJECT_ID
चलाया जा सकता है.
अपने Firebase प्रोजेक्ट को स्थानीय तौर पर उपलब्ध कराएं और टेस्ट करें
प्रोडक्शन में डिप्लॉय करने से पहले, स्थानीय तौर पर होस्ट किए गए यूआरएल पर Firebase प्रोजेक्ट देखा जा सकता है और उसकी जांच की जा सकती है. अगर आपको सिर्फ़ कुछ सुविधाओं की जांच करनी है, तो firebase serve
कमांड पर फ़्लैग में कॉमा लगाकर अलग की गई सूची का इस्तेमाल करें.
अगर आपको इनमें से कोई काम करना है, तो अपनी लोकल प्रोजेक्ट डायरेक्ट्री के रूट से यह कमांड चलाएं:
- Firebase से होस्ट किए गए अपने ऐप्लिकेशन के लिए स्टैटिक कॉन्टेंट देखें.
- Firebase होस्टिंग के लिए डाइनैमिक कॉन्टेंट जनरेट करने के लिए, Cloud Functions का इस्तेमाल करें. साथ ही, आपको अपने प्रोडक्शन (डिप्लॉय किए गए) एचटीटीपी फ़ंक्शन का इस्तेमाल करके, लोकल यूआरएल पर होस्टिंग की सुविधा का इस्तेमाल करना हो.
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 सीएलआई आपके Firebase प्रोजेक्ट में कोड और ऐसेट के डिप्लॉयमेंट को मैनेज करता है. इनमें ये शामिल हैं:
- आपकी Firebase होस्टिंग साइटों की नई रिलीज़
- Firebase के लिए नए, अपडेट किए गए या मौजूदा Cloud Functions
- Firebase रीयलटाइम डेटाबेस के नियम
- 'Firebase के लिए Cloud Storage' के नियम
- Cloud Firestore के नियम
- Cloud Firestore के इंडेक्स
किसी Firebase प्रोजेक्ट में डिप्लॉय करने के लिए, अपनी प्रोजेक्ट डायरेक्ट्री से यह कमांड चलाएं:
firebase deploy
अपने हर डिप्लॉयमेंट पर टिप्पणी भी की जा सकती है. हालांकि, ऐसा करना ज़रूरी नहीं है. यह टिप्पणी आपके प्रोजेक्ट के Firebase होस्टिंग पेज पर, डिप्लॉयमेंट की अन्य जानकारी के साथ दिखेगी. उदाहरण के लिए:
firebase deploy -m "Deploying the best new feature ever."
firebase deploy
कमांड का इस्तेमाल करते समय, इन बातों का ध्यान रखें:
प्रोजेक्ट डायरेक्ट्री से संसाधन डिप्लॉय करने के लिए, प्रोजेक्ट डायरेक्ट्री में एक
firebase.json
फ़ाइल होनी चाहिए. यह फ़ाइल,firebase init
कमांड से आपके लिए अपने-आप बन जाती है.डिफ़ॉल्ट रूप से,
firebase deploy
आपकी प्रोजेक्ट डायरेक्ट्री में डिप्लॉय किए जा सकने वाले सभी संसाधनों के लिए एक रिलीज़ बनाता है. Firebase की चुनिंदा सेवाओं या सुविधाओं को डिप्लॉय करने के लिए, कुछ हद तक डिप्लॉयमेंट का इस्तेमाल करें.
सुरक्षा नियमों के लिए परिनियोजन विरोधाभास
Firebase रीयल टाइम डेटाबेस, Firebase के लिए Cloud Storage, और Cloud Firestore के लिए, सुरक्षा के नियम अपनी लोकल प्रोजेक्ट डायरेक्ट्री या Firebase कंसोल में तय किए जा सकते हैं.
डिप्लॉयमेंट के विवादों से बचने का दूसरा विकल्प यह है कि कुछ हद तक डिप्लॉयमेंट का इस्तेमाल करें और सिर्फ़ Firebase कंसोल में नियम तय करें.
डिप्लॉयमेंट कोटा
यह भी मुमकिन है कि आप अपने Firebase डिप्लॉयमेंट ऑपरेशन की दर या वॉल्यूम को सीमित करने वाले कोटा को पार कर जाएं. उदाहरण के लिए, बहुत ज़्यादा फ़ंक्शन को डिप्लॉय करने पर, आपको HTTP 429 Quota
गड़बड़ी का मैसेज मिल सकता है. ऐसी समस्याओं को हल करने के लिए, कुछ हद तक डिप्लॉयमेंट का इस्तेमाल करें.
डिप्लॉयमेंट को रोल बैक करना
अपनी पसंद की रिलीज़ के लिए, रोलबैक कार्रवाई चुनकर, अपने प्रोजेक्ट के Firebase होस्टिंग पेज से Firebase होस्टिंग डिप्लॉयमेंट को रोल बैक किया जा सकता है.
फ़िलहाल, Firebase रीयल टाइम डेटाबेस, Firebase के लिए Cloud Storage या Cloud Firestore के लिए सुरक्षा नियमों की रिलीज़ को रोल बैक नहीं किया जा सकता.
खास Firebase सेवाओं को डिप्लॉय करें
अगर आपको सिर्फ़ कुछ खास Firebase सेवाओं या सुविधाओं को डिप्लॉय करना है, तो firebase deploy
कमांड पर दिए गए फ़्लैग में, कॉमा लगाकर अलग की गई सूची का इस्तेमाल करें. उदाहरण के लिए,
नीचे दिया गया निर्देश, Firebase होस्टिंग कॉन्टेंट और
Cloud Storage के सुरक्षा नियमों को डिप्लॉय करता है.
firebase deploy --only hosting,storage
नीचे दी गई टेबल में, कुछ हद तक डिप्लॉयमेंट के लिए उपलब्ध सेवाओं और सुविधाओं की सूची दी गई है. फ़्लैग में दिए गए नाम, आपकी
firebase.json
कॉन्फ़िगरेशन फ़ाइल में मौजूद कुंजियों के मुताबिक हैं.
सिंटैक्स फ़्लैग करें | डिप्लॉय की गई सेवा या सुविधा |
---|---|
--only hosting |
Firebase होस्टिंग से जुड़ा कॉन्टेंट |
--only database |
Firebase रीयल टाइम डेटाबेस के नियम |
--only storage |
'Firebase के लिए Cloud Storage' के नियम |
--only firestore |
कॉन्फ़िगर किए गए सभी डेटाबेस के लिए, Cloud Firestore के नियम और इंडेक्स |
--only functions |
Firebase के लिए Cloud Functions (इस फ़्लैग के ज़्यादा खास वर्शन का इस्तेमाल किया जा सकता है) |
खास फ़ंक्शन डिप्लॉय करें
फ़ंक्शन को डिप्लॉय करते समय, खास फ़ंक्शन को टारगेट किया जा सकता है. उदाहरण के लिए:
firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2
दूसरा विकल्प यह है कि आप फ़ंक्शन को अपनी
/functions/index.js
फ़ाइल के एक्सपोर्ट ग्रुप में ग्रुप करें. फ़ंक्शन को ग्रुप करने की सुविधा से, एक ही कमांड का इस्तेमाल करके कई फ़ंक्शन डिप्लॉय किए जा सकते हैं.
उदाहरण के लिए, groupA
और groupB
को तय करने के लिए ये फ़ंक्शन लिखे जा सकते हैं:
var functions = require('firebase-functions');
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');
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 सीएलआई, पहले डिप्लॉय किए गए फ़ंक्शन मिटाने के लिए इन निर्देशों और विकल्पों के साथ काम करता है:
सभी रीजन में, दिए गए नाम से मैच करने वाले सभी फ़ंक्शन मिटा देता है:
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 में ट्रांसपाइल कर सकती है. साथ ही, PostDeploy हुक से एडमिन को यह सूचना मिल सकती है कि कोई नया साइट कॉन्टेंट, Firebase होस्टिंग के लिए डिप्लॉय किया गया है.
प्रीडिप्लॉय या पोस्टडेली हुक सेट अप करने के लिए, अपनी firebase.json
कॉन्फ़िगरेशन फ़ाइल में बैश स्क्रिप्ट जोड़ें. सीधे firebase.json
फ़ाइल में कम शब्दों वाली स्क्रिप्ट तय की जा सकती हैं. इसके अलावा, प्रोजेक्ट डायरेक्ट्री में मौजूद अन्य फ़ाइलों का रेफ़रंस दिया जा सकता है.
उदाहरण के लिए, नीचे दी गई स्क्रिप्ट पोस्टडिप्लॉय टास्क के लिए firebase.json
एक्सप्रेशन है. यह Firebase होस्टिंग में डिप्लॉयमेंट के पूरा होने पर, 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
दोनों हुक, टर्मिनल पर स्क्रिप्ट के स्टैंडर्ड आउटपुट और गड़बड़ी स्ट्रीम प्रिंट करते हैं. गड़बड़ी के मामलों के लिए, इन बातों का ध्यान रखें:
- अगर पहले से डिप्लॉय किया गया हुक उम्मीद के मुताबिक पूरा नहीं हो पाता है, तो डिप्लॉयमेंट रद्द कर दिया जाता है.
- अगर किसी वजह से डिप्लॉयमेंट नहीं हो पाता है, तो पोस्टडिप्लॉय हुक ट्रिगर नहीं होते हैं.
एनवायरमेंट वैरिएबल
प्रीडिप्लॉय और पोस्टडिप्लॉय हुक में चल रही स्क्रिप्ट के अंदर, ये एनवायरमेंट वैरिएबल उपलब्ध होते हैं:
$GCLOUD_PROJECT
: सक्रिय प्रोजेक्ट का प्रोजेक्ट आईडी$PROJECT_DIR
:firebase.json
फ़ाइल वाली रूट डायरेक्ट्री$RESOURCE_DIR
: (सिर्फ़hosting
औरfunctions
स्क्रिप्ट के लिए) उस डायरेक्ट्री की जगह जिसमें होस्टिंग या Cloud Functions के संसाधन शामिल हैं
कई रीयल टाइम डेटाबेस इंस्टेंस मैनेज करना
किसी Firebase प्रोजेक्ट में Firebase रीयल टाइम डेटाबेस के एक से ज़्यादा इंस्टेंस हो सकते हैं. डिफ़ॉल्ट रूप से, सीएलआई निर्देश आपके डिफ़ॉल्ट डेटाबेस इंस्टेंस के साथ इंटरैक्ट करते हैं.
हालांकि, --instance DATABASE_NAME
--instance
फ़्लैग के साथ काम करते हैं:
firebase database:get
firebase database:profile
firebase database:push
firebase database:remove
firebase database:set
firebase database:update
कमांड का रेफ़रंस
सीएलआई एडमिन के निर्देश
आदेश | जानकारी |
---|---|
सहायता | सीएलआई या खास निर्देशों के बारे में सहायता जानकारी दिखाता है. |
इनिट | मौजूदा डायरेक्ट्री में एक नया Firebase प्रोजेक्ट जोड़ें और उसे सेट अप करें.
इस निर्देश से, मौजूदा डायरेक्ट्री में
firebase.json
कॉन्फ़िगरेशन फ़ाइल बनती है. |
login | आपके Firebase खाते में सीएलआई की पुष्टि करता है. इसके लिए, वेब ब्राउज़र का
ऐक्सेस होना ज़रूरी है. अगर किसी रिमोट एनवायरमेंट में सीएलआई में लॉग इन करना है और localhost को ऐक्सेस करने की अनुमति नहीं है, तो --no-localhost |
login:ci | यह नॉन-इंटरैक्टिव एनवायरमेंट में इस्तेमाल करने के लिए, पुष्टि करने वाला टोकन जनरेट करता है. |
लॉगआउट | आपके Firebase खाते से सीएलआई को साइन आउट करता है. |
खुला | इससे ब्राउज़र में, काम के प्रोजेक्ट के संसाधन खुलते हैं. |
प्रोजेक्ट:सूची | यह उन सभी Firebase प्रोजेक्ट की सूची बनाता है जिनका ऐक्सेस आपके पास है. |
इस्तेमाल करें | सीएलआई के लिए चालू Firebase प्रोजेक्ट सेट करता है. प्रोजेक्ट अन्य नाम मैनेज करता है. |
प्रोजेक्ट मैनेज करने के निर्देश
आदेश | जानकारी | |
---|---|---|
Firebase प्रोजेक्ट का मैनेजमेंट | ||
projects:addfirebase | किसी मौजूदा Google Cloud प्रोजेक्ट में Firebase के संसाधन जोड़ता है. | |
प्रोजेक्ट:बनाएं | एक नया Google Cloud प्रोजेक्ट बनाता है. इसके बाद, नए प्रोजेक्ट में Firebase के संसाधन जोड़ता है. | |
प्रोजेक्ट:सूची | यह उन सभी Firebase प्रोजेक्ट की सूची बनाता है जिनका ऐक्सेस आपके पास है. | |
Firebase ऐप्लिकेशन का मैनेजमेंट (iOS, Android, वेब) | ||
apps:बनाएं | चालू प्रोजेक्ट में एक नया Firebase ऐप्लिकेशन बनाता है. | |
apps:सूची | यह, चालू प्रोजेक्ट में रजिस्टर किए गए Firebase ऐप्लिकेशन की सूची बनाता है. | |
apps:sdkconfig | इससे Firebase ऐप्लिकेशन के Google की सेवाओं के कॉन्फ़िगरेशन को प्रिंट किया जाता है. | |
सेटअप:वेब | अब काम नहीं करता. इसके बजाय, apps:sdkconfig का इस्तेमाल करें और
web को प्लैटफ़ॉर्म आर्ग्युमेंट के तौर पर बताएं.Firebase वेब ऐप्लिकेशन के Google की सेवाओं के कॉन्फ़िगरेशन को प्रिंट करता है. |
|
SHA सर्टिफ़िकेट हैश का मैनेजमेंट (सिर्फ़ Android पर) | ||
apps:android:sha:create \ FIREBASE_APP_ID SHA_HASH |
Firebase के Android ऐप्लिकेशन में, बताए गए SHA सर्टिफ़िकेट हैश को जोड़ता है. | |
apps:android:sha:delete \ FIREBASE_APP_ID SHA_HASH |
Firebase के Android ऐप्लिकेशन से, तय किए गए SHA सर्टिफ़िकेट हैश को मिटाता है. | |
apps:android:sha:list \ FIREBASE_APP_ID |
यह 'Firebase Android ऐप्लिकेशन' के लिए SHA सर्टिफ़िकेट हैश की सूची बनाता है. |
डिप्लॉयमेंट ऐंड लोकल डेवलपमेंट
इन निर्देशों की मदद से, अपनी Firebase होस्टिंग साइट को डिप्लॉय किया जा सकता है और उसके साथ इंटरैक्ट किया जा सकता है.
आदेश | जानकारी |
---|---|
डिप्लॉय करें | यह आपकी प्रोजेक्ट डायरेक्ट्री से, ऐक्टिव प्रोजेक्ट में कोड और ऐसेट को
डिप्लॉय करता है. Firebase होस्टिंग के लिए, firebase.json
कॉन्फ़िगरेशन फ़ाइल ज़रूरी है.
|
सेवा | आपके Firebase होस्टिंग कॉन्फ़िगरेशन के साथ लोकल वेब सर्वर शुरू करता है.
Firebase होस्टिंग के लिए, firebase.json
कॉन्फ़िगरेशन फ़ाइल ज़रूरी है. |
App Distribution से जुड़े निर्देश
आदेश | जानकारी |
---|---|
app Distribution:डिस्ट्रिब्यूट \ --ऐप्लिकेशन FIREBASE_APP_ID |
बिल्ड को टेस्टर के लिए उपलब्ध कराता है. |
app Distribution:testers:add | प्रोजेक्ट में टेस्टर जोड़ता है. |
app Distribution:testers:remove | प्रोजेक्ट से टेस्टर को हटा देता है. |
ऐप्लिकेशन होस्टिंग के निर्देश
आदेश | जानकारी |
---|---|
apphosting:backends:create \ --प्रोजेक्ट PROJECT_ID --location REGION --ऐप्लिकेशन APP_ID |
यह एक ऐसे कोड बेस से जुड़े, मैनेज किए जा रहे रिसॉर्स का कलेक्शन बनाता है जिसमें ऐप्लिकेशन होस्टिंग बैकएंड शामिल होता है. इसके अलावा, किसी मौजूदा Firebase वेब ऐप्लिकेशन की जानकारी देने के लिए, उसका Firebase ऐप्लिकेशन आईडी भी दिया जा सकता है. |
apphosting:backends:get \
BACKEND_ID --प्रोजेक्ट PROJECT_ID --जगह REGION |
इसकी मदद से, किसी बैकएंड के सार्वजनिक यूआरएल के साथ-साथ खास जानकारी हासिल की जाती है. |
apphosting:backends:list \ --प्रोजेक्ट PROJECT_ID |
किसी प्रोजेक्ट से जुड़े सभी ऐक्टिव बैकएंड की सूची हासिल करता है. |
Firebase apphosting:backends:delete \
BACKEND_ID --प्रोजेक्ट PROJECT_ID --location REGION |
प्रोजेक्ट से बैकएंड मिटाता है. |
apphosting:secrets:set \ KEY --प्रोजेक्ट PROJECT_ID --location REGION --डेटा-फ़ाइल Data file |
यह सीक्रेट मैनेजर में सीक्रेट कॉन्टेंट सेव करता है. आप चाहें, तो
सीक्रेट डेटा को पढ़ने के लिए फ़ाइल का पाथ दें. स्टैंडर्ड इनपुट का सीक्रेट डेटा पढ़ने के लिए,
_ पर सेट करें.
|
apphosting:secrets:grantaccess \ KEY --प्रोजेक्ट PROJECT_ID BACKEND_ID --जगह REGION |
दिए गए सीक्रेट का बैकएंड सेवा खाते को ऐक्सेस देता है, ताकि ऐप्लिकेशन होस्टिंग की मदद से उसे बिल्ड या रन टाइम के समय ऐक्सेस किया जा सके. |
apphosting:secrets:describe \ KEY --project PROJECT_ID |
सीक्रेट और उसके वर्शन के लिए मेटाडेटा देता है. |
Firebase apphosting:secrets:access \ KEY[@version] --प्रोजेक्ट PROJECT_ID |
सीक्रेट और उसके वर्शन के आधार पर सीक्रेट वैल्यू ऐक्सेस करता है. डिफ़ॉल्ट रूप से, सबसे नए वर्शन को ऐक्सेस किया जाता है. |
पुष्टि करने (यूज़र मैनेजमेंट) के निर्देश
आदेश | जानकारी |
---|---|
auth:export | चालू प्रोजेक्ट के उपयोगकर्ता खातों को JSON या CSV फ़ाइल में एक्सपोर्ट करता है. ज़्यादा जानकारी के लिए, auth:Import and auth:export पेज देखें. |
auth:Import | JSON या CSV फ़ाइल से उपयोगकर्ता खातों को ऐक्टिव प्रोजेक्ट में इंपोर्ट करता है. ज़्यादा जानकारी के लिए, auth:Import and auth:export पेज देखें. |
Cloud Firestore के लिए निर्देश
आदेश | जानकारी |
---|---|
फ़ायरस्टोर:लोकेशन |
अपने Cloud Firestore डेटाबेस के लिए उपलब्ध जगहों की सूची बनाएं. |
firestore:databases:create DATABASE_ID |
अपने Firebase प्रोजेक्ट में, नेटिव मोड में डेटाबेस इंस्टेंस बनाएं. निर्देश इन फ़्लैग को लेता है:
|
firestore:databases:सूची |
अपने Firebase प्रोजेक्ट में डेटाबेस की सूची बनाएं. |
firestore:databases:get DATABASE_ID |
अपने Firebase प्रोजेक्ट में, किसी खास डेटाबेस के लिए डेटाबेस कॉन्फ़िगरेशन पाएं. |
firestore:databases:अपडेट DATABASE_ID |
अपने Firebase प्रोजेक्ट में किसी खास डेटाबेस का डेटाबेस कॉन्फ़िगरेशन अपडेट करें. कम से कम एक फ़्लैग ज़रूरी है. निर्देश इन फ़्लैग को लेता है:
|
firestore:databases:delete DATABASE_ID |
अपने Firebase प्रोजेक्ट में मौजूद किसी डेटाबेस को मिटाएं. |
फ़ायरस्टोर:इंडेक्स |
अपने Firebase प्रोजेक्ट में किसी डेटाबेस के इंडेक्स की सूची बनाएं. आदेश निम्न फ़्लैग लेता है:
|
firestore:delete |
ऐक्टिव प्रोजेक्ट के डेटाबेस में मौजूद दस्तावेज़ों को मिटाता है. सीएलआई का इस्तेमाल करके, आपके पास कलेक्शन के सभी दस्तावेज़ों को बार-बार मिटाने का विकल्प होता है. ध्यान दें कि सीएलआई से Cloud Firestore डेटा मिटाने पर, डेटा पढ़ने और मिटाने की लागत आती है. ज़्यादा जानकारी के लिए, Cloud Firestore के बारे में जानकारी पाना देखें. आदेश निम्न फ़्लैग लेता है:
|
Firebase निर्देशों के लिए Cloud Functions
आदेश | जानकारी |
---|---|
Functions:config:clone | किसी अन्य प्रोजेक्ट के एनवायरमेंट को चालू Firebase प्रोजेक्ट में क्लोन करता है. |
फ़ंक्शन:config:get | ऐक्टिव प्रोजेक्ट के Cloud Functions की मौजूदा कॉन्फ़िगरेशन वैल्यू को हासिल करता है. |
फ़ंक्शन:कॉन्फ़िगरेशन:सेट | चालू प्रोजेक्ट के Cloud Functions की रनटाइम कॉन्फ़िगरेशन वैल्यू को सेव करता है. |
फ़ंक्शन:कॉन्फ़िगरेशन:अनसेट | चालू प्रोजेक्ट के रनटाइम कॉन्फ़िगरेशन से वैल्यू हटाता है. |
फ़ंक्शन:लॉग | डिप्लॉय किए गए Cloud Functions के लॉग पढ़ता है. |
ज़्यादा जानकारी के लिए, एनवायरमेंट कॉन्फ़िगरेशन से जुड़ा दस्तावेज़ देखें.
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:सिंबल:अपलोड \ --ऐप्लिकेशन=FIREBASE_APP_ID \ PATH/TO/SYMBOLS |
यह Android पर नेटिव लाइब्रेरी के क्रैश होने पर, Crashlytics के साथ काम करने वाली सिंबल फ़ाइल जनरेट करता है और उसे Firebase सर्वर पर अपलोड करता है. |
एक्सटेंशन के लिए निर्देश
आदेश | जानकारी |
---|---|
एक्सक्ट | Firebase एक्सटेंशन के निर्देशों का इस्तेमाल करने के तरीके के बारे में जानकारी दिखाता है. यह नीति, ऐक्टिव प्रोजेक्ट में इंस्टॉल किए गए एक्सटेंशन इंस्टेंस की सूची बनाती है. |
ext:कॉन्फ़िगर करें \ EXTENSION_INSTANCE_ID |
यह आपके एक्सटेंशन मेनिफ़ेस्ट में, किसी एक्सटेंशन इंस्टेंस की पैरामीटर वैल्यू को फिर से कॉन्फ़िगर करता है. |
ext:जानकारी \ PUBLISHER_ID/EXTENSION_ID |
किसी एक्सटेंशन के बारे में ज़्यादा जानकारी प्रिंट करता है. |
ext:इंस्टॉल करें \ PUBLISHER_ID/EXTENSION_ID |
आपके एक्सटेंशन मेनिफ़ेस्ट में, किसी एक्सटेंशन का नया इंस्टेंस जोड़ता है. |
ext:सूची | यह सूची, Firebase प्रोजेक्ट में इंस्टॉल किए गए सभी एक्सटेंशन इंस्टेंस की जानकारी देती है. हर एक्सटेंशन का इंस्टेंस आईडी प्रिंट करता है. |
ext:अनइंस्टॉल करें \ EXTENSION_INSTANCE_ID |
आपके एक्सटेंशन मेनिफ़ेस्ट से किसी एक्सटेंशन इंस्टेंस को हटाता है. |
ext:अपडेट \ EXTENSION_INSTANCE_ID |
आपके एक्सटेंशन मेनिफ़ेस्ट में, एक्सटेंशन के इंस्टेंस को नए वर्शन में अपडेट करता है. |
टेक्स्ट:एक्सपोर्ट | आपके प्रोजेक्ट से इंस्टॉल किए गए सभी एक्सटेंशन इंस्टेंस को एक्सटेंशन मेनिफ़ेस्ट में एक्सपोर्ट करता है. |
एक्सटेंशन पब्लिशर के लिए निर्देश
आदेश | जानकारी |
---|---|
ext:dev:init | मौजूदा डायरेक्ट्री में नए एक्सटेंशन के लिए, स्केल कोड बेस को शुरू करता है. |
ext:dev:सूची \ PUBLISHER_ID |
किसी पब्लिशर के अपलोड किए गए सभी एक्सटेंशन की सूची प्रिंट करता है. |
ext:dev:register | Firebase प्रोजेक्ट को एक्सटेंशन पब्लिशर प्रोजेक्ट के तौर पर रजिस्टर करता है. |
ext:dev:इस्तेमाल बंद करें \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
प्रेडिकेट किए गए वर्शन से मेल खाने वाले एक्सटेंशन वर्शन को बंद कर देता है. अनुमानित वर्शन कोई एक वर्शन (जैसे कि 1.0.0 ) या अलग-अलग वर्शन (जैसे कि >1.0.0 ) हो सकता है.अगर कोई वर्शन विधेय नहीं दिया जाता है, तो उस एक्सटेंशन के सभी वर्शन रोक दिए जाते हैं. |
ext:dev:uneprecate \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
अब सेवा में नहीं है
एक्सटेंशन के ऐसे वर्शन जो वर्शन प्रेडिकेट किए गए वर्शन से मेल खाते हैं. प्रीडिकेट, कोई एक वर्शन (जैसे कि 1.0.0 ) या कई वर्शन (जैसे कि >1.0.0 ) हो सकता है.अगर कोई वर्शन विधेय नहीं दिया जाता है, तो उस एक्सटेंशन के सभी वर्शन रोक दिए जाते हैं. |
ext:dev:अपलोड \ PUBLISHER_ID/EXTENSION_ID |
किसी एक्सटेंशन का नया वर्शन अपलोड करता है. |
ext:dev:usage \ PUBLISHER_ID |
यह किसी पब्लिशर के अपलोड किए गए एक्सटेंशन के लिए, इंस्टॉल की संख्या और इस्तेमाल से जुड़ी मेट्रिक दिखाता है. |
होस्ट करने से जुड़े निर्देश
आदेश | जानकारी |
---|---|
hosting:disable |
चालू Firebase प्रोजेक्ट के लिए, 'Firebase होस्टिंग' ट्रैफ़िक दिखाना बंद कर देता है. इस निर्देश के बाद, आपके प्रोजेक्ट का होस्टिंग यूआरएल, "साइट नहीं मिली" मैसेज दिखाएगा. |
होस्टिंग साइटों का मैनेजमेंट | |
Firebase होस्टिंग:sites:create \ SITE_ID |
बताए गए (ज़रूरी नहीं) नीचे दिए गए फ़्लैग को पास करके, नई साइट से जोड़ने के लिए किसी मौजूदा Firebase वेब ऐप्लिकेशन के बारे में बताएं:
|
Firebase होस्टिंग:sites:delete \ SITE_ID |
बताई गई होस्टिंग साइट को मिटाता है साइट को मिटाने से पहले, सीएलआई पुष्टि करने का अनुरोध दिखाता है. (ज़रूरी नहीं) पुष्टि करने वाले प्रॉम्प्ट को स्किप करें. इसके लिए, ये फ़्लैग पास करें: |
Firebase होस्टिंग:sites:get \ SITE_ID |
बताई गई होस्टिंग साइट के बारे में जानकारी हासिल करता है |
Firebase होस्टिंग:sites:list |
यह डायलॉग बॉक्स चालू Firebase प्रोजेक्ट के लिए, होस्ट करने वाली सभी साइटों की सूची बनाता है |
प्रीव्यू चैनलों का मैनेजमेंट | |
Firebase होस्टिंग:channel:create \ CHANNEL_ID |
बताई गई यह निर्देश चैनल पर डिप्लॉय नहीं होता है. |
Firebase होस्टिंग:channel:delete \ CHANNEL_ID |
चुने गए झलक चैनल को मिटाता है किसी साइट का लाइव चैनल मिटाया नहीं जा सकता. |
Firebase होस्टिंग:channel:Deploy \ CHANNEL_ID |
आपकी होस्टिंग कॉन्टेंट और कॉन्फ़िगरेशन को बताए गए झलक चैनल पर डिप्लॉय करता है अगर झलक वाला चैनल अब तक मौजूद नहीं है, तो इस निर्देश से चैनल पर डिप्लॉय करने से पहले, होस्ट करने वाली डिफ़ॉल्ट साइट में चैनल बन जाएगा. |
Firebase होस्टिंग:channel:list | इसमें सभी चैनलों (इनमें "लाइव" चैनल भी शामिल है) को डिफ़ॉल्ट होस्टिंग साइट में शामिल किया जाता है |
Firebase होस्टिंग:channel:open \ CHANNEL_ID |
इससे चैनल के यूआरएल पर जाने का ब्राउज़र खुल जाता है या ब्राउज़र में न खुलने पर यूआरएल दिखता है |
वर्शन की क्लोनिंग | |
Firebase होस्टिंग:क्लोन \ SOURCE_SITE_ID:SOURCE_CHANNEL_ID \ TARGET_SITE_ID:TARGET_CHANNEL_ID |
दिए गए "सोर्स" चैनल पर, हाल ही में डिप्लॉय किए गए वर्शन को, बताए गए "टारगेट" चैनल में क्लोन करता है यह निर्देश दिए गए "टारगेट" चैनल पर भी काम करता है. अगर "टारगेट" चैनल अब तक मौजूद नहीं है, तो यह निर्देश चैनल पर डिप्लॉय करने से पहले, "टारगेट" होस्टिंग साइट में एक नया झलक चैनल बना देता है. |
Firebase होस्टिंग:क्लोन \ SOURCE_SITE_ID:@VERSION_ID \ TARGET_SITE_ID:TARGET_CHANNEL_ID |
तय किए गए वर्शन को, दिए गए "टारगेट" चैनल पर क्लोन करता है यह निर्देश दिए गए "टारगेट" चैनल पर भी काम करता है. अगर "टारगेट" चैनल अब तक मौजूद नहीं है, तो यह निर्देश चैनल पर डिप्लॉय करने से पहले, "टारगेट" होस्टिंग साइट में एक नया झलक चैनल बना देता है. आपको Firebase कंसोल के
होस्टिंग डैशबोर्ड
में |
रीयलटाइम डेटाबेस के निर्देश
ध्यान दें कि Firebase कंसोल में, शुरुआती और डिफ़ॉल्ट डेटाबेस इंस्टेंस बनाया जा सकता है. इसके अलावा, सामान्य firebase init
वर्कफ़्लो या खास firebase init database
फ़्लो का इस्तेमाल करके भी ऐसा किया जा सकता है.
इंस्टेंस बनाने के बाद, उन्हें एक से ज़्यादा रीयल टाइम डेटाबेस इंस्टेंस मैनेज करें में बताए गए तरीके से मैनेज किया जा सकता है.
आदेश | जानकारी |
---|---|
database:get | चालू प्रोजेक्ट के डेटाबेस से डेटा फ़ेच करता है और उसे JSON के तौर पर दिखाता है. इंडेक्स किए गए डेटा पर क्वेरी की जा सकती है. |
database:instances:create | बताए गए इंस्टेंस नाम के साथ डेटाबेस इंस्टेंस बनाता है. किसी खास इलाके में डेटाबेस बनाने के लिए,
--location विकल्प स्वीकार किया जाता है. अगर आपको इस विकल्प के साथ इलाके के नाम इस्तेमाल करने हैं, तो
अपने प्रोजेक्ट के लिए जगहें चुनना लेख पढ़ें.
अगर मौजूदा प्रोजेक्ट के लिए कोई डेटाबेस इंस्टेंस मौजूद नहीं है, तो आपको कोई इंस्टेंस बनाने के लिए, firebase init फ़्लो चलाने के लिए कहा जाएगा.
|
database:instances:list | इस प्रोजेक्ट के लिए सभी डेटाबेस इंस्टेंस की सूची बनाएं. किसी बताए गए क्षेत्र में डेटाबेस की सूची बनाने के लिए
--location विकल्प स्वीकार करता है. अगर आपको इस विकल्प के साथ इलाके के नाम इस्तेमाल करने हैं, तो
अपने प्रोजेक्ट के लिए जगहें चुनना लेख पढ़ें. |
डेटाबेस:प्रोफ़ाइल | ऐक्टिव प्रोजेक्ट के डेटाबेस पर कार्रवाइयों की प्रोफ़ाइल बनाता है. ज़्यादा जानकारी के लिए, रीयल टाइम डेटाबेस ऑपरेशन के टाइप देखें. |
डेटाबेस:पुश | नए डेटा को ऐक्टिव प्रोजेक्ट के डेटाबेस में तय जगह पर एक सूची में पुश करता है. यह किसी फ़ाइल, STDIN या कमांड लाइन आर्ग्युमेंट से इनपुट लेता है. |
डेटाबेस:हटाएं | ऐक्टिव प्रोजेक्ट के डेटाबेस में किसी खास जगह का पूरा डेटा मिटाता है. |
database:set | चालू प्रोजेक्ट के डेटाबेस में, किसी तय जगह पर मौजूद सारा डेटा बदलता है. किसी फ़ाइल, STDIN या कमांड लाइन आर्ग्युमेंट से इनपुट लेता है. |
database:अपडेट | ऐक्टिव प्रोजेक्ट के डेटाबेस में, बताई गई जगह पर कुछ हद तक अपडेट करता है. यह किसी फ़ाइल, STDIN या कमांड लाइन आर्ग्युमेंट से इनपुट लेता है. |
रिमोट कॉन्फ़िगरेशन के निर्देश
आदेश | जानकारी |
---|---|
remoteconfig:versions:list \ --limit NUMBER_OF_VERSIONS |
टेंप्लेट के सबसे नए 10 वर्शन की सूची दिखाता है. सभी मौजूदा वर्शन दिखाने के लिए,
0 तय करें या
लौटाए जाने वाले वर्शन की संख्या को सीमित करने के लिए,
--limit विकल्प को पास करें. |
remoteconfig:get \ --v, version_number VERSION_NUMBER --o, आउटपुट FILENAME |
इसमें, वर्शन के हिसाब से टेंप्लेट (डिफ़ॉल्ट रूप से सबसे नए वर्शन पर सेट होता है)
शामिल होता है. साथ ही,
पैरामीटर ग्रुप, पैरामीटर, और स्थिति के नाम के साथ-साथ वर्शन को एक टेबल में दिखाता है. इसके अलावा, किसी तय की गई फ़ाइल में -o, FILENAME का इस्तेमाल करके, आउटपुट लिखा जा सकता है. |
remoteconfig:rollback \ --v, version_number VERSION_NUMBER --force |
रिमोट कॉन्फ़िगरेशन टेंप्लेट को, बताए गए पिछले वर्शन नंबर पर रोल बैक करता है
या डिफ़ॉल्ट रूप से पिछले वर्शन (मौजूदा वर्शन -1) पर सेट करता है. जब तक --force पास नहीं हो जाता, तब तक रोल बैक करने से पहले, हां/नहीं
बताएं. |