SORU
15 EYLÜL 2009, Salı


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
15 EYLÜL 2009, Salı


İ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

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • Kindness

    Kindness

    23 Ocak 2006