GİT deposu, birden fazla proje ile server düzeni
Subversion kurdunuz hakkında seviyorum şeylerden biri de birden fazla proje ile tek bir ana depo var. Bir proje üzerinde çalışmak istiyorum zaman sadece o proje kontrol edebilirim. Bu gibi
\main
\ProductA
\ProductB
\Shared
sonra
svn checkout http://.../main/ProductA
Git yeni bir kullanıcı olarak en iyi belirli bir iş akışı için taahhütte bulunmadan önce sahada uygulama biraz araştırmak istiyorum. Şimdiye kadar okuduğum kadarıyla, git bir tek her şeyi saklar .proje ağacı kökünde gıt klasör. İki şeyden birini yapabilirdim.
- Her Ürün için ayrı bir proje kurdu.
- Alt klasörlerde tek bir büyük proje ve mağaza ürünleri ayarlayın.
Ürünler arasında bağımlılıkları vardır, tek büyük proje uygun görünüyor. Tüm geliştiriciler kendi kod paylaşabileceği bir server kullanacağız. Zaten bu SSH VE HTTP üzerinden çalışan ve en sevdiğim parçası var. Ancak, SVN depoları özellikle aşırı ağ bant genişliği için Fatura olduğumuza göre zaten her makinede tüm depoyu kötü bir fikir gibi görünüyor etrafında sürükleyerek yani boyutu kaç GB.
Linux çekirdeği projesi depoları Gıt ile bu işleme uygun bir yolu olmalı yani eşit derecede büyük olduğunu tahmin ediyorum ama henüz bulamadım.
Çok büyük ve çok proje depoları ile çalışmak için herhangi bir kılavuz ya da en iyi yöntemler var mı?
CEVAP
Kılavuz basit, getirmediGit limits:
- proje başına bir repo
- ana projesubmodules.
Fikri saklamak için değilher şeyidev bir git repo, ama doğru referans olacak temel bir proje olarak küçük bir repo oluşturmak diğer repos, her biri kendi başına bir proje ya da ortak bir bileşeni temsil eder.
Bu sesler benzer "dışındakiler" destek subversion tarafından sağlanan.
Bunu denedik ve son derece hantal projeleri aynı anda birbirine bağımlılığı ile geliştirilmiştir beri sürekli dışındakiler sürüm başvuruları güncelleştirmek için bulundu. Başka bir seçenek var mı??
@Paul: Evet, yerine ana projeden ya: sürüm güncelleme
- doğrudan ana proje içinde alt projeler anlatıldığı gibi ("True Nature of submodules"), . geliştirmek
- ya da bir alt-repo aynı doğru
origin
sub-repo başka bir yerde geliştirilen referans: oradan sadece alt-repo değişiklikler başka bir yerde yapılmış. bunu çekmek zorunda
Her iki durumda da, ana proje taahhüt, yeni yapılandırmayı kaydetmek için unutma. Hiçbir "dış" burada güncelleme özelliği. Tüm süreç çok daha doğal.
Dürüst olmak gerekirse, bu acı bir gerçek gibi geliyor ve geliştiriciler bir şey, her zaman el ile yapmak için gereken her şeyi sadece böcekler düzenli bir kaynak bir bakım olacak.
Süper projede bazı kodlar ile bu otomatik bir bakacağım sanırım.
Ben cevap verdi:
Açıkçası, haklı olabilirsin... bu kadar son Git release 1.7.1.
git diff
git status
eğer ana projeden idam bile hesap alt modüller içine Birleşik Devletleri almayı öğrendim.
Sadece submodule modifikasyon Bayan olamaz.
Bu söyleniyor:
- alt modüller SVN dışındakiler farklıdır: "Why are git submodules incompatible with svn externals?"
- alt modüller yönetmek zor olabilir: "How exactly does git submodule work?".
Birden fazla proje içinde birden çok ö...
düğüm-websocket-server: birden fazla, ...
Birden fazla proje için etkin Visual S...
Olan proje ile aynı adı taşıyan birden...
Nasıl bir kayıt (select top 1) Her kay...