Git को वर्जन कंट्रोल सिस्टम वितरित किया जाता है, जबकि Subversion सेंट्रलाइज्ड (क्लाइंट-सर्वर) वर्जन कंट्रोल सिस्टम होता है। वे अलग तरह से काम करते हैं; उस की आदत डाल लें। StackOverflow पर प्रश्न के बराबरsvn status -u लाने के लिए उस अंतर के परिणामों की व्याख्या करने वाले मेरे उत्तर को पढ़ें ।
खुद को थोड़ा दोहराते हुए: केंद्रीकृत संस्करण नियंत्रण प्रणाली (जैसे सीवीएस या तोड़फोड़) में लगभग सभी कमांड सर्वर पर संसाधित होते हैं , और नेटवर्क को शामिल करते हैं। बहुत कम आदेश स्थानीय स्तर पर किए जाते हैं। ध्यान दें कि "svn स्टेटस" और "svn diff" का अच्छा प्रदर्शन करने के लिए क्लाइंट पर चेक-आउट वर्जन की "सबवर्सन स्टोर्स 'प्रिस्टिन कॉपी', उन कॉमन ऑपरेशंस के लिए नेटवर्क ट्रांसफर को शामिल नहीं करना है (इसका मतलब है कि सबवर्सन चेकआउट - 2 x) कम से कम कार्यशील निर्देशिका का आकार)।
वितरित संस्करण नियंत्रण प्रणाली (जैसे Git, Mercurial या Bazaar) में, जहाँ आपके पास संपूर्ण भंडार की स्थानीय प्रति (क्लोन) होती है, लगभग सभी आदेश क्लाइंट पर किए जाते हैं । बहुत कम आदेशों को अन्य रिपॉजिटरी (सर्वर से) के लिए नेटवर्क कनेक्शन की आवश्यकता होती है।
सर्वर पर आपके द्वारा निष्पादित की जाने वाली कमांड की संख्या सीमित है।
- आप " git ls-Remote <URL>" के साथ रिमोट पर सभी संदर्भों को सूचीबद्ध कर सकते हैं ।
- आप
" git संग्रह --remote = <URL> HEAD" के साथ रिपॉजिटरी (यदि दूरस्थ सर्वर ने इसे सक्षम किया है) का स्नैपशॉट प्राप्त कर सकते हैं ।
- आप
" git clone --depth = 1 <URL>" के साथ केवल कुछ अंतिम कमिट (तथाकथित "उथला क्लोन") क्लोन कर सकते हैं।
- यदि सर्वर रिपॉजिटरी को git वेब इंटरफेस प्रदान करता है, तो आप इसे ब्राउज़ करने के लिए उपयोग कर सकते हैं।
git cloneहालाँकि, एक चीज़ जो आप कर सकते हैं , वह है केवल एक संशोधन को पास करके--depth 1। यह संभावित रूप से बड़ी मात्रा में इतिहास प्राप्त करने से बचता है, और "पुनरीक्षण में कौन सी फाइलें मौजूद हैं" जैसे सवालों के जवाब देने के लिए पर्याप्त होगाabcdef1234567890?