Nasıl iki gıt depoları birleştirme musunuz?
Aşağıdaki senaryoyu düşünün: Bir kendi gıt onun repo küçük bir deneysel proje geliştirdim. Şimdi olgunlaştı ve kendi büyük deposu olan büyük proje B, bir parçası olmak istiyorum. Şimdi B. bir alt dizin olarak Bir ekleme yapmak istiyorum
Nasıl herhangi bir tarafında tarih kaybetmeden B içine Bir birleştirme.
CEVAP
İki olası çözümü vardır:
Alt modüller
Kopyalardan büyük proje B içine ayrı Bir dizin depo, ya (belki daha iyi) proje B alt depo Sonra klon git submodule Bu bir depo yapmak için kullanınsubmoduledepo B
Bu iyi bir çözüm için gevşek çiftli depoları, nerede gelişiminde Bir depo devam ediyor ve büyük bölümünü gelişme ayrı tek başına geliştirme A. Ayrıca Bakınız SubmoduleSupport GitSubmoduleTutorial sayfalarındaki Gıt Wiki.
Alt birleştirme
Bir proje B kullanarak bir alt depo birleştirebilirsinizalt birleştirmestrateji. Bu Markus Prinz tarafından Subtree Merging and You açıklanmıştır.
git remote add -f Bproject /path/to/B
git merge -s ours --no-commit Bproject/master
git read-tree --prefix=dir-B/ -u Bproject/master
git commit -m "Merge B project as our subdirectory"
git pull -s subtree Bproject master
Ya da kullanabilirsinizgıt ağacıapenwarr (Avery Yazılmıştır), aracı (repository on github) blog görevinden A new alternative to git submodules: git subtree örneğin duyurdu.
Sizin durumunuzda (daha büyük Bir projenin parçası B) doğru çözüm kullanmak olacaktır sanırımalt birleştirme
Nasıl git-merge ile seçici dosyaları b...
Nasıl hepsini birlikte yedeklenir, böy...
Nasıl sol dış birleştirme kullanarak s...
Nasıl bir ÇAPRAZ SERİ ile SQL BİRLEŞTİ...
SQLite - Nasıl farklı veritabanlarında...