Git LFS क्या हैं?
Git LFS (Large File Storage) Git- , (, ) .
बड़ी फ़ाइलों को सीधे आपके रिपॉजिटरी में संग्रहीत करने के बजाय, LFS आपके रेपो में एक छोटी पॉइंटर फ़ाइल संग्रहीत करता है और वास्तविक सामग्री को एक अलग LFS सर्वर पर रखता है।
यह आपकी रिपॉजिटरी को तेज़ और छोटा रखता है, तब भी जब आप बहुत बड़ी फ़ाइलों के साथ काम कर रहे हों।
जो कोई भी रेपो क्लोन करता है उसे पॉइंटर मिलता है, और Git LFS को जरूरत पड़ने पर वास्तविक फ़ाइल सामग्री मिलती है।
नोट:
.gitattributes पर अधिक जानकारी के लिए, समर्पित पृष्ठ देखें।
Git LFS-Kab का उपयोग अवश्य करें
बड़ी फ़ाइलें
बड़ी फ़ाइलों (मीडिया, डेटासेट, बायनेरिज़) का संस्करण बनाते समय
फ़ाइल आकार सीमा
जब आपका प्रोजेक्ट मानक Git होस्टिंग की फ़ाइल आकार सीमा से अधिक हो जाता है
गति और आकार
जब आप अपने रिपॉजिटरी का आकार प्रबंधनीय और तेज़ रखना चाहते हैं
गिट एलएफएस स्थापित करें
git-lfs.github.com- Git LFS- .
अपने भंडार पर LFS प्रारंभ करें:
उदाहरण
git lfs install
एलएफएस के साथ फाइलों को ट्रैक करें
Git LFS को बताएं कि किन फ़ाइलों को "ट्रैकिंग" करके प्रबंधित करना है। उदाहरण के लिए, सभी फ़ोटोशॉप फ़ाइलों को ट्रैक करने के लिए:
उदाहरण: .psd फ़ाइलें ट्रैक करें
git lfs track "*.psd"
आप किसी भी फ़ाइल प्रकार को ट्रैक कर सकते हैं. यहां और भी उदाहरण हैं:
और ज्यादा उदाहरण
git lfs track "*.zip"
git lfs track "data/*.csv"
git lfs track "images/*.{png,jpg}"
एलएफएस कैसे काम करता है (.gitattributes और संकेत)
जब आप LFS के साथ किसी फ़ाइल प्रकार को ट्रैक करते हैं, तो Git .gitattributes फ़ाइल में एक नियम जोड़ता है। यह Git को इन फ़ाइलों के लिए LFS का उपयोग करने के लिए कहता है।
उदाहरण: .gitattributes प्रविष्टि
*.psd filter=lfs diff=lfs merge=lfs -text
जब आप ट्रैक की गई फ़ाइल जोड़ते हैं और प्रतिबद्ध करते हैं, तो Git आपके रेपो में एक छोटी "पॉइंटर" फ़ाइल संग्रहीत करता है। वास्तविक सामग्री एलएफएस सर्वर पर अपलोड की जाती है।
यदि आप LFS फ़ाइलों के साथ रेपो को क्लोन या खींचते हैं, तो Git LFS सर्वर से वास्तविक सामग्री डाउनलोड करेगा (यदि आपके पास LFS स्थापित है)।
LFS फ़ाइलें जोड़ें, प्रतिबद्ध करें और पुश करें
फ़ाइलें हमेशा की तरह जोड़ें:git add largefile.psd
प्रतिबद्ध:git commit -m "Add large file"
धकेलना:git push origin main
वास्तविक फ़ाइल डेटा LFS सर्वर पर संग्रहीत होता है, जबकि आपके रेपो में एक पॉइंटर फ़ाइल होती है।
एलएफएस स्थिति की जाँच करें
देखें कि आपके रेपो में कौन सी फ़ाइलें LFS द्वारा प्रबंधित की जाती हैं:
उदाहरण: एलएफएस फाइलों की सूची बनाएं
git lfs ls-files
LFS से फ़ाइलें अनट्रैक/निकालें
.gitattributes संपादित करें और संबंधित पंक्ति को हटा दें या बदल दें।
अनट्रैक कमांड चलाएँ:
उदाहरण: किसी फ़ाइल को अनट्रैक करें
git lfs untrack "*.psd"
git add .gitattributes
बदलाव का संकल्प लें. फ़ाइल अब LFS द्वारा प्रबंधित नहीं की जाती है (लेकिन मौजूदा संस्करण अभी भी LFS में संग्रहीत हैं)।
युक्तियाँ एवं सर्वोत्तम प्रथाएँ
केवल बड़ी फ़ाइलों के लिए
LFS का उपयोग केवल उन फ़ाइलों के लिए करें जो बहुत बड़ी हैं या सामान्य Git के लिए बार-बार बदलती हैं।
होस्टिंग समर्थन
इसका उपयोग करने से पहले जांचें कि क्या आपका होस्टिंग प्रदाता एलएफएस का समर्थन करता है (विशेषकर निजी रिपो के लिए)।
भंडारण सीमा
अपने एलएफएस भंडारण कोटा की निगरानी करें। मुफ़्त योजनाएँ अक्सर सीमित होती हैं।
समस्या निवारण
सूचक फ़ाइलें
यदि आप किसी रेपो को क्लोन करते हैं और वास्तविक सामग्री के बजाय पॉइंटर फ़ाइलें देखते हैं, तो सुनिश्चित करें कि Git LFS स्थापित हैgit lfs pullचालू करो।
कोई एलएफएस समर्थन नहीं
यदि आप किसी ऐसे रिमोट को दबाते हैं जो एलएफएस का समर्थन नहीं करता है, तो आपको एक त्रुटि मिलेगी।
कोटा का उल्लंघन
यदि आप अपना एलएफएस कोटा पार कर जाते हैं तो कुछ फ़ाइलें अपलोड नहीं की जा सकतीं।
चेतावनियाँ
महत्वपूर्ण चेतावनियाँ
सभी होस्टिंग प्रदाता एलएफएस का समर्थन नहीं करते हैं। इसे इस्तेमाल करने से पहले जांच लें.
निःशुल्क योजनाओं में एलएफएस भंडारण अक्सर सीमित होता है।
त्वरित संदर्भ
एलएफएस स्थापित करें
Git LFS-
git lfs install
फ़ाइलें ट्रैक करें
फ़ाइल प्रकार ट्रैक करें
git lfs track "*.psd"
एलएफएस फ़ाइलें
ट्रैक की गई फ़ाइलें देखें
git lfs ls-files
अनट्रैक करें
फ़ाइलें अनट्रैक करें
git lfs untrack "*.psd"