सबसे अधिक के लिए Google एक Perforce सेटअप का उपयोग करता है । हालांकि, इसके ऊपर काम करने के लिए गिट जैसे अन्य उपकरण प्राप्त करने के लिए आंतरिक उपकरण हैं। (वे इसे कैसे पूरा करते हैं, मुझे नहीं पता।) एंड्रॉइड और क्रोमियम जैसी बड़ी, ओपन-सोर्स परियोजनाओं में हालांकि अलग-अलग रिपॉजिटरी हैं।
Perforce के शीर्ष पर निर्मित बहुत सारे तारकीय आंतरिक अनुप्रयोग हैं। उदाहरण के लिए, बिल्डिंग, टेस्टिंग और कोड रिव्यू बनाने के लिए कुछ भी नहीं है।
आंशिक रूप से इस 'जादू' और परीक्षण संस्कृति के कारण, Google वास्तव में शाखा का उपयोग नहीं करता है। हर कोई 'मुख्य' की जाँच करता है। किसी भी परियोजना के लिए आप स्रोत देख सकते हैं, इसका निर्माण कर सकते हैं, और बिना किसी विशेष ज्ञान के इकाई परीक्षण चला सकते हैं। यह बहुत बड़ा है। जब मैं Microsoft पर था, तो प्रत्येक उत्पाद को अपने परीक्षण के निर्माण और चलाने के लिए एक अलग जानवर के बलिदान की आवश्यकता होती थी।
इसके अलावा, Google के पास हमारे द्वारा उपयोग की जाने वाली प्रमुख भाषाओं के लिए एक कंपनी-व्यापी शैली मार्गदर्शिका है । यदि आपके पास किसी अन्य टीम के स्रोत कोड तक पहुंच है, तो प्रारूपण सभी winky है तो क्या होगा!
खोज के लिए, आप Google कोड खोज से परिचित हो सकते हैं । इसका एक विशेष संस्करण है, साथ में अन्य टॉप-सीक्रेट कोड सर्च करने वाले टूल जो नेविगेट करने वाले कोड को बहुत आसान बनाते हैं।
संक्षेप में, Google के पास एक बहुत ही इंजीनियरिंग-केंद्रित संस्कृति है जो उपकरण और डेवलपर उत्पादकता के मूल्य को समझता है।