सामग्री पर जाएं
GitTree
परिवर्तन और कमिट

कमिट होने से पहले संभावित रहस्यों की समीक्षा करें

किसी कमिट या पुश से पहले, GitTree Possible secrets in this commit या Possible secrets in this push दिखा सकता है। स्कैन स्थानीय और परिबद्ध है। आप Unstage File, Add to .gitignore, Commit Anyway या Push Anyway कर सकते हैं। चेतावनी इस बात का प्रमाण नहीं है कि कोई रहस्य मौजूद है, और चुप्पी इस बात का प्रमाण नहीं है कि कोई रहस्य मौजूद है।

निःशुल्कअद्यतन किया गया

GitTree में काम करता है निःशुल्क: प्रत्येक स्थानीय Git सुविधा, बिना किसी खाते की आवश्यकता के।

इस पेज पर
  1. शुरू करने से पहले
  2. इसे कहां खोजें
  3. कदम
  4. अपेक्षित परिणाम
  5. स्कैन में क्या शामिल नहीं है
  6. नियमों और चरणबद्ध फ़ाइलों पर ध्यान न दें
  7. जानबूझकर एक पंक्ति की अनुमति दें
  8. अगर कुछ गलत होता है
  9. प्रश्न
  10. संबंधित

शुरू करने से पहले

  • गुप्त चेतावनियाँ निःशुल्क योजना का हिस्सा हैं। वे तब चालू होते हैं जब Local secret warnings Warn before proceeding होता है।
  • स्कैन एक कमिट के लिए चरणबद्ध सामग्री को पढ़ता है, और एक पुश के लिए एक समर्थित आउटगोइंग कमिट रेंज को पढ़ता है। यह फ़ाइल सामग्री को GitTree पर नहीं भेजता है।

इसे कहां खोजें

  • जब आप कमिट होते हैं तो चेतावनी कमिट बॉक्स से खुलती है, या जब आप पुश करते हैं तो पुश प्रवाह से चेतावनी खुलती है।
  • Preferences, Local secret warnings सेटिंग: Warn before proceeding या Off।
कार्रवाईmacOSWindows और Linux
कमिट⌘EnterCtrl+Enter
प्राथमिकताएँ⌘,Ctrl+,

कदम

  1. हमेशा की तरह कमिट हों या आगे बढ़ें

    फ़ाइलों को चरणबद्ध करें और संदेश लिखें, या पुश प्रारंभ करें। यदि स्कैन को कोई संभावित रहस्य मिलता है, तो GitTree समाप्त होने के बजाय रुक जाता है और संवाद खोलता है। आपका संदेश और कार्यशील फ़ाइलें तब रखी जाती हैं जब संवाद कमिट होता है। पुश डायलॉग कहता है कि पहले से ही कमिट एक रहस्य को ठीक करने के लिए एक नई कमिट या पुनर्लेखन की आवश्यकता है।

    संदेश फ़ील्ड, विकल्प और हुक लाइन वाला कमिट बॉक्स
    इस बॉक्स से कमिट चेतावनी खुलती है. स्टिल कंपोज़र दिखाता है, चेतावनी संवाद नहीं।GitTree प्रदर्शन भंडार के साथ इंटरफ़ेस।
  2. चेतावनी पढ़ें

    शीर्षक Possible secrets in this commit या Possible secrets in this push है। प्रत्येक पंक्ति एक नियम का नाम देती है, जैसे कि Private key, AWS access key, GitHub token, GitLab token, Slack token, Stripe live key, Google API key या Sensitive file name, और जब उसमें एक पंक्ति संख्या होती है। टोकन नकाबपोश हैं. एक निजी कुंजी को Private key header के रूप में दिखाया गया है।

  3. रहस्य को कमिट से दूर रखें

    Unstage File उस फ़ाइल को अनुक्रमणिका से हटा देता है। Add to .gitignore एक अनदेखा नियम जोड़ता है। संवाद कहता है कि नियमों को अनदेखा करने से चरणबद्ध सामग्री नहीं हटती, इसलिए फ़ाइल को भी अस्थिर कर दें। जानबूझकर एक पंक्ति की अनुमति देने के लिए, उस पंक्ति में gittree:allow-secret जोड़ें। इससे लाइन के लिए चेतावनी बंद हो जाती है। यह कुछ भी एन्क्रिप्ट नहीं करता.

  4. यदि आपका ऐसा करने का मन हो तो ही जारी रखें

    Commit Anyway या Push Anyway जारी है। Cancel आपको बिना साझा किए कमिट बॉक्स या पुश पर लौटा देता है। यदि कुछ परिवर्तनों का निरीक्षण नहीं किया गया, तो संवाद ऐसा कहता है। इसे अपूर्ण स्कैन के रूप में मानें, साफ़ परिणाम के रूप में नहीं।

अपेक्षित परिणाम

या तो रहस्य अब उजागर नहीं हुआ है, या आपने चेतावनी पढ़ने के बाद जारी रखना चुना है। आगे बढ़ने से पहले अगली कमिट का अंतर जांचें। एक .gitignore नियम उस कमिट को दोबारा नहीं लिखता जिसमें फ़ाइल पहले से मौजूद हो।

स्कैन में क्या शामिल नहीं है

Local secret warnings का कहना है कि निरीक्षण स्थानीय और सीमित रहता है, और इसे बंद करना पूरे ऐप के लिए आपकी पसंद है। यह जिन अंतरालों की रिपोर्ट कर सकता है वे हैं The inspection limit was reached, Binary content was skipped, Lines longer than 4 KiB were skipped और Some content could not be inspected। The optional secret scan was unavailable का अर्थ है कि आपको सामग्री की समीक्षा स्वयं करनी चाहिए।

कोई रहस्य क्यों छूट सकता है?
अंतरालक्या करें?
बाइनरी सामग्री छोड़ दी गई थीफ़ाइल स्वयं खोलें. स्कैन इसे नहीं पढ़ता है.
4 KiB से अधिक लंबी लाइनें छोड़ दी गईंकिसी संपादक में वह पंक्ति खोजें. छोटी लाइन पर एक टोकन स्कैन नहीं किया जाता है।
निरीक्षण की सीमा पूरी हो गई थीफ़ाइलों का एक छोटा सेट बनाएँ और बाकी पढ़ें।
सेटिंग बंद हैजब तक आप आगे बढ़ने से पहले चेतावनी न चुनें तब तक कुछ भी स्कैन नहीं किया जाता है।

नियमों और चरणबद्ध फ़ाइलों पर ध्यान न दें

संवाद कहता है कि Ignore rules do not remove staged content. Unstage the file as well. git check-ignore दिखा सकता है कि पथ .gitignore से मेल खाता है जबकि git diff --cached अभी भी इसे सूचकांक में दिखाता है। इसे अस्थिर करें, फिर कमिट हों। नियम जोड़ने से पहले से मौजूद कमिट से फ़ाइल नहीं हटती।

git diff --cached -- path/to/file
git restore --staged -- path/to/file
git check-ignore -v path/to/file

यदि रहस्य पहले से ही रिमोट पर है, तो .gitignore बदलना पर्याप्त नहीं है। आपको एक नई प्रतिबद्धता की आवश्यकता है जो इसे हटा देती है, और यदि पुरानी प्रतिबद्धताओं में यह शामिल नहीं होना चाहिए तो इतिहास को फिर से लिखना होगा। GitTree प्रत्येक क्लोन से एक रहस्य मिटाने का वादा नहीं करता है। यदि आप भी कमिट को अस्वीकार करने के लिए हुक चाहते हैं तो फ़ाइलों को अनदेखा करें और हुक देखें।

जानबूझकर एक पंक्ति की अनुमति दें

Add gittree:allow-secret on a line to stop warning about it. उस मार्कर को उस लाइन पर रखें जिसे कमिट किया जाना चाहिए, उदाहरण के लिए एक फिक्स्चर टोकन जो वास्तविक क्रेडेंशियल नहीं है। फ़ाइल में मार्कर दिखाई दे रहा है. किसी लाइव कुंजी को छिपाने के लिए इसका उपयोग न करें. Commit Anyway मार्कर जोड़े बिना कमिट होता है।

पुश चेतावनियाँ उन कमिटों की समीक्षा करती हैं जिन्हें आप भेजने वाले हैं। Possible secrets in this push उस फ़ाइल को अनस्टेज नहीं कर सकता जो पहले से ही कमिट में है। इसे नई कमिट के साथ ठीक करें, या अप्रकाशित इतिहास को फिर से लिखें, फिर दोबारा पुश करें। लीज के साथ फोर्स पुश शाखा के अप्रकाशित होने पर सुरक्षित पुनर्लेखन पुश है। ट्यूटोरियल आपको इस संवाद की आवश्यकता से पहले रोजमर्रा की कमिटों को कवर करता है।

अगर कुछ गलत होता है

"आगे बढ़ने से पहले संभावित रहस्यों की आपकी समीक्षा की आवश्यकता है।"

कमिट या पुश डायलॉग पर प्रतीक्षा कर रहा है। मंच को हटाएँ, अनदेखा करें, लाइन की अनुमति दें, या वैसे भी कमिट करें या वैसे भी पुश करें चुनें। रद्द करें एक कमिट के लिए संदेश और कार्यशील फ़ाइलों को यथास्थान छोड़ देता है।

"नियमों की अनदेखी करने से चरणबद्ध सामग्री नहीं हटती। साथ ही फ़ाइल को भी अनस्टेज कर दें।"

.gitignore में जोड़ें केवल इग्नोर फ़ाइल को अपडेट करता है। अनस्टेज फ़ाइल दबाएँ, या git restart --stged चलाएँ, ताकि अगले कमिट में पथ शामिल न हो।

"कुछ परिवर्तनों का निरीक्षण नहीं किया गया।"

स्कैन जल्दी बंद हो गया, बाइनरी को छोड़ दिया, या 4 KiB से अधिक की लाइन को छोड़ दिया। आगे बढ़ने से पहले उन फ़ाइलों को स्वयं पढ़ें।

"विकल्प गुप्त स्कैन अनुपलब्ध था। सामग्री की स्वयं समीक्षा करें।"

GitTree स्कैन नहीं चला सका. कमिट स्वच्छ प्रमाणित नहीं है. अंतर पढ़ें, फिर तभी कमिट करें जब आपने इसे जांच लिया हो।

प्रश्न

क्या GitTree रहस्य खोजने के लिए मेरी फ़ाइलें अपलोड करता है?

नहीं, सेटिंग कहती है कि निरीक्षण स्थानीय और सीमित रहता है। संवाद यह समीक्षा करता है कि आप इस कंप्यूटर पर क्या करने या आगे बढ़ने वाले हैं।

क्या कोई साफ़ संवाद इस बात का प्रमाण है कि कोई रहस्य नहीं है?

नहीं, बाइनरी सामग्री और 4 KiB से अधिक लंबी लाइनें छोड़ दी जाती हैं, निरीक्षण एक सीमा तक पहुंच सकता है, और पैटर्न हर रहस्य से मेल नहीं खाते हैं। चेतावनी भी कोई गारंटी नहीं है.

क्या .gitignore उस रहस्य को हटा देता है जिसका मैंने पहले ही स्टेजिंग कर लिया है?

नहीं, नियमों की अनदेखी करने से चरणबद्ध सामग्री नहीं हटती। फ़ाइल को भी अनस्टेज करें. एक नियम पुरानी कमिटों को दोबारा नहीं लिखता है।

gittree:allow-secret क्या करता है?

एक लाइन पर, यह उस लाइन के लिए चेतावनी रोक देता है। पंक्ति अभी भी पाठ के रूप में कमिट है। इसका उपयोग केवल उस मूल्य के लिए करें जिसे आप साझा करना चाहते हैं।

क्या मैं चेतावनियाँ बंद कर सकता हूँ?

हाँ। प्राथमिकताएँ › स्थानीय गुप्त चेतावनियाँ › बंद। यह एक ऐप-व्यापी विकल्प है। स्कैन तब तक नहीं चलता जब तक आप दोबारा आगे बढ़ने से पहले चेतावनी सेट नहीं करते।