Google'ın tüm kodlarının dev bir özel (dahili) deposuna sahip olduğunu ve çalışanlarının buna erişebildiğini duydum, böylece bir şeyler geliştirirken tekerleği yeniden icat etmek zorunda kalmıyorlar. Bu konuda daha fazla bilgi edinmek istiyorum!
Burada Google'dan biraz daha ayrıntılı olarak açıklayabilecek biri var mı veya bunun hakkında biraz daha bilginiz var mı? Ben esas olarak nasıl organize ve bir çalışan olması gerektiği gibi dev bir kod tabanında bir şey bulmak için nasıl kolaylaştırmak bilmek bilmek istiyorum.
İşte nasıl düzenlendiğini açıklayan bir video: Google'ın Hızında ve Ölçeğinde Geliştirme
Ashish Kumar, Google'ın 2000'den fazla tüm projelerinin kaynak kodunu yüz milyonlarca kod satırı içeren tek bir kod gövdesinde tutmayı başardı ve 5.000'den fazla geliştirici aynı veri havuzuna erişti.
Çoğu Google için bir Performans kurulumu kullanır. Bununla birlikte, git gibi diğer araçların üzerinde çalışmasını sağlamak için dahili araçlar vardır. (Bunu nasıl başardıklarını bilmiyorum.) Bununla birlikte Android ve Chromium gibi büyük, açık kaynaklı projelerin ayrı depoları var.
Performans üzerine inşa edilmiş çok sayıda yıldız dahili uygulama vardır. Örneğin, bina, test ve kod incelemelerini büyülü bir şey yapmak için araçlar vardır.
Kısmen bu 'büyü' ve test kültürü nedeniyle Google gerçekten dallanma kullanmıyor. Herkes 'ana' kontrol eder. Herhangi bir proje için herhangi bir uzman bilgisi olmadan kaynağı görebilir, oluşturabilir ve birim testlerini yapabilirsiniz. Bu cok büyük. Microsoft'tayken her ürün farklı bir hayvanın kurban edilmesini gerektiriyordu ve testlerini yapmak söz konusu olmayacaktı.
Ayrıca, Google'ın kullandığımız ana diller için şirket genelinde stil kılavuz vardır. başka bir ekibin kaynak koduna erişiminiz varsa, biçimlendirmenin tamamen sakıncası olursa ne olur!
Kısacası, Google, araçların değerini ve geliştirici verimliliğini anlayan mühendislik odaklı bir kültüre sahiptir.
Çok büyük:
(Ocak 2015 itibariyle)
- Toplam dosya sayısı: 1 milyar
- Kaynak dosya sayısı: 9 milyon
- Kod satırları: 2 milyar
- Tarihin derinliği: 35 milyon taahhüt
- İçerik boyutu: 86 terabayt
- İş günü başına taahhüt: 45 bin
Google altyapısına dayanan Piper adlı dahili bir araç kullanıyorlar.