2008-11-05 29 views
6

Uzaktan kandırıcılı bir git depom var.git: bir uzaktan kumandadan farklı bir yola nasıl birleştirilir?

foo, bir web uygulaması, kökü doğrudan bazı dosyaları ve dizinleri içerir:

Rakefile 
app 
... 
public 
script 

Benim asıl git depo Bu web uygulamasını içeren daha büyük bir sistemdir. Yüklemeyi foo'dan çekmek istiyorum, ancak web dizininde bulunması gereken dosyalara ihtiyacım var. Bu yüzden web/app, web/public, vb. Olmalıdır.

Alt programı bir alt modda kullanmak istemiyorum. Ana depoya foo'yu birleştirmek ve ondan kurtulmak istiyorum. İşte

http://www.kernel.org/pub/software/scm/git/docs/howto/using-merge-subtree.html

cevap

1

Eğer cevap olarak kabul etmek isterseniz Cevabınız bir topluluk wiki sürümü:

2

yukarı güncel kaynaklar şunlardır:

How to use the subtree merge strategy gelen Cite: Bu örnekte

, Diyelim ki /path/to/B de depo var diyelim (ancak isterseniz o yanı bir URL olabilir). Bu havuzun ana dalını, geçerli dalınızdaki dir-B alt dizinine birleştirmek istiyorsunuz.

$ 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 

makale "Subtree merging and you" Yorumlar için Ayrıca bkz: Burada

ihtiyacınız komut dizisidir.

İlgili konular