Ben büyük başarı elde ettiler git-hgdan https://github.com/cosmin/git-hg (yükleme çalışma gerektirir hgda). Getirmeyi, çekmeyi ve itmeyi destekler ve benim için daha kararlıhg-git (benzer özelliklerden hggit'e).
Kullanım örnekleri için https://github.com/cosmin/git-hg#usage adresine bakın . Kullanıcı arayüzü çok benzergit-svn .
git-hgHer klonlanmış hg repo için ekstra disk alanı gerektirir. Uygulama tam cıva klonu, ekstra git çıplak klon ve gerçek git repo kullanır. Gerekli disk alanı, yalnızca normal git kullanımının yaklaşık 3 katıdır. Ek kopyalar, .gitçalışma dizininizin (veya GIT_DIRher zamanki gibi gösterilen konumun) dizininin altında saklanır .
Uyarı:git-hg Çözmeye çalışan temel sorun gitve hgözellikler arasında 1: 1 eşleme olmamasıdır . En büyük sorun, git şubeleri ile hg adsız şubeler ve hg adlı şubeler ve hg yer imleri arasındaki empedans uyumsuzluğudur (bunların hepsi gitkullanıcılara çok benziyor ). İlgili bir sorun, hgşube adının yalnızca varsayılan olarak şablon yürütme iletisine eklendiği git yerine sürüm geçmişine orijinal adlı şube adını kaydetmeye çalışmasıdır.
Birlikte çalışabilir köprü oluşturduğunu iddia eden gitve hgbu empedans eşleşmesiyle nasıl başa çıkacağını açıklayan herhangi bir araç . Ardından, seçilen çözümün ihtiyaçlarınıza uygun olup olmadığına karar verebilirsiniz.
Kullanılan çözüm, git-hgtüm hg yer imlerini silmek ve adlandırılmış dalları git dallarına dönüştürmektir. Ayrıca git master dalını varsayılan adlandırılmamış hg dalına ayarlar.