Benzer bir şey yapmam gerekiyordu, ancak bir alt projeyi bir repodan diğerine taşımak istedim. Benim yaptığım şey, herhangi bir kaynaktan nesneyi alabildiğinden getirmeyi kullanmaktı.
Temel olarak, yeni bir şube oluşturdum, o dalda gereksiz olan şeyleri sildim, daha sonra bir repodan diğerine geçmek için git getirmeyi kullandım. Nesneleri aldığımda, birleştirme hile yaptı.
E.g.
cd /path/to/other/repository
git fetch /path/to/source/repo temp:temp
sıcaklığı: Geçici araçları
git checkout -b temp master
git rm -r Unneeded_stuff
git commit -m 'pruning'
Sonra (ilgisiz) tamamen farklı birine tek deposundan bu kolu getirebilir: Orijinal şeyler vardır depo üzerinde
msgstr "kaynağında sıcaklığı getir ve buraya geçici olarak kaydet". Buradan sonucu ustanıza birleştirebilirsiniz.
git merge temp
Sen o zaman hiç orijinal repo ile birleştirmek istediğiniz bir şey değil birinci durumda beri, geçici şube silebilir ve ikinci durumda bunu birleştirdik.
Bu adımların biraz sıkıştırılabileceğine eminim, ancak bu set güzel ve açık görünüyor.
Bunun bir http://stackoverflow.com/questions/359424/detach-subdirectory-into-separate-git-repository kopyası olduğunu unutmayın (Jim DeLaHunt'ın cevabında söylediği gibi). –