Ben büyük başarı elde ettiler git-hg
dan https://github.com/cosmin/git-hg (yükleme çalışma gerektirir hg
da). Getirmeyi, çekmeyi ve itmeyi destekler ve benim için daha kararlıhg-git
(benzer özelliklerden hg
git'e).
Kullanım örnekleri için https://github.com/cosmin/git-hg#usage adresine bakın . Kullanıcı arayüzü çok benzergit-svn
.
git-hg
Her 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_DIR
her zamanki gibi gösterilen konumun) dizininin altında saklanır .
Uyarı:git-hg
Çözmeye çalışan temel sorun git
ve 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 git
kullanı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 git
ve hg
bu 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-hg
tü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.