2012-06-22 36 views
22

svn repo'yu git'e dönüştürmeye çalışıyorum, ancak fazla başarı elde edemiyorum. Söz konusu depoda "gövde" gibi bir şey yok. düzen şudur: svn deposunu dönüştüremiyorum (gövde olmadan) git

 
/home/svn/ 
     |--- /project1/ 
     |--- /project2/ 
     |--- /repos/project3/ 

Ve bu proje klasörler altında

dosyalarıdır. Gövde yok, şube yok, özel bir şey yok. Şu anda ihtiyacım olan o anda, ve şimdi kıçımda beni ısırıyor. Ben bu komutu çalıştırdığınızda http://john.albin.net/git/convert-subversion-to-git

:

ben bu kılavuzu takip ediyorum

git svn clone svn+ssh://[email protected]/home/svn/repos/kiflea --no-metadata -A authors-transform.txt --stdlayout ~/kiflea 

O boş git depo yarattı diyor ... Ama gerçekten bunu istemiyoruz boş ol.

Ayrıca, aşağıdaki komutların nasıl görünmesi gerektiği konusunda hiçbir fikrim yok, çünkü depomuzun farklı bir düzeni var. git symbolic-ref HEAD refs/heads/trunk veya

+3

Kaldır --stdlayout 3 Git depolarına bölmek ister misiniz? –

+0

Bunu yaptı. Çok fazla varyasyon denedim, bu kadar çok komut var, ama --stdlayout'u buradan kaldırmak benim aklımdan geçmedi. Size cevap verebilmem için soruyu cevaplayın;) – skerit

+0

Sadece manuel sayfaya bakmalısınız ('git svn --help'). Tam davanızı şaşırtıcı bir şekilde içeren bir "TEMEL ÖRNEKLER" bölümü bile vardır. – user1338062

cevap

40

--stdlayout seçeneğini kaldırmanız yeterlidir. Bu gövde/dallar/etiketler yapısı anlamına gelir.

3

size SVN deposuna yerel erişiminiz varsa git config remote.bare.push 'refs/remotes/*:refs/heads/*' gibi

Komutları, sana dönüşüm için SubGit kullanmayı öneriyoruz. bir Git deposu oluşturulacak ve depoları sürekli senkronize olacak sonra

$ subgit configure path/to/svn/repository 
$ #edit path/to/svn/repository/conf/subgit.conf to specify "core.authorsFile" option to point to your authors-transform.txt 
$ subgit install path/to/svn/repository 

: Bir kaç basit adım vardır konum. İsteğe bağlı olarak senkronizasyonu kapatmak için

'u çalıştırabilirsiniz.

Deponuza yerel erişiminiz yoksa, deponuzu SmartGit ile kopyaladınız. Efekt, "git svn clone" ile benzerdir, ancak göz ardı, EOLs işleme seçenekleri, etiketler gibi SVN kavramları da Git'e (aynı zamanda SubGit hakkında da söyleyebilirim) dönüştürülecektir.

Bu çözümlerin hiçbiri "git-svn" ye dayanmamaktadır.

+0

Alternatif için teşekkürler, ancak depoya alt bölümü yüklendiğinde, herhangi bir svn işlemini çevirmeyi başaramaz. ("KURULUM BAŞARILI" yazıyor olsa bile) – skerit

+1

Üzgünüz, mesajınızı yanlış yorumluyorum, şu anda alt grup gövde/dallar/etiketler düzeni ile çalışıyor. Ama SmartGit kesinlikle yardım etmeli. –

İlgili konular