Bir hack olarak, GitTips sayfasındaki iki farklı depodaki taahhütleri karşılaştırmak için tarifi değiştirmeyi deneyebilirsiniz , yani:
GIT_ALTERNATE_OBJECT_DIRECTORIES=../repo/.git/objects \
git cherry-pick $(git --git-dir=../repo/.git rev-parse --verify <commit>)
../repodiğer depoya giden yol nerede .
Modern Git ile çok sayıda revizyonu ve revizyon aralığını kiraz toplama ile kullanabilirsiniz .
$(git --git-dir=../repo/.git rev-parse --verify <commit>)
Çevirmek için burada <commit>(örneğin HEAD, ya v0.2, ya master~2taahhüt SHA-1 tanımlayıcı içine kopyalamak ikinci depoda değerlerdir ki,). Seçmek istediğiniz bir değişikliğin SHA-1'ini biliyorsanız, bu gerekli değildir.
NOT o alternatif nesne deposu bir çalışma için, sadece geçici olduğunu bilmez olarak ancak Git kaynak deposunda nesneler kopyalama atlayabilirsiniz söyledi. Aşağıdakilerle ikinci depodaki nesneleri kopyalamanız gerekebilir:
GIT_ALTERNATE_OBJECT_DIRECTORIES=../repo/.git/objects git repack -a -d -f
Bu, ikinci depodan ödünç alınan nesneleri orijinal depo deposuna koyar.
Test edilmedi.
Knittl cevabını takip etmek çok zor olmayan bir çözümdür :
- Kayıtları kopyalamak istediğiniz ikinci depoya gidin ve istediğiniz kayıtlardan yamalar oluşturun
git format-patch
- İsteğe bağlı olarak, yamaları (0001- * vb.) Deponuza kopyalayın
git am --3wayYamaları uygulamak için kullanın