Portál AbcLinuxu, 5. května 2025 02:59

Dotaz: Rekonstrukce svn repository z working copy

10.8.2014 10:27 Milan Beneš | skóre: 17 | blog: Kraft_durch_Freude
Rekonstrukce svn repository z working copy
Přečteno: 360×
Odpovědět | Admin
Zdravím, stojím před následujícím problémem: mám existující konsistentní working copy (jedná se o velký projekt - přes 100K revizí, desítky GB, statisíce až miliony souborů) a potřeboval bych tento working copy nějakým způsobem doplnit na celý repozitář, aby nad tím šel lokálně spustit svnserve. Je toto vůbec nějakým způsobem možné? Motivací je o takto vytvořený repozitář opřít git svn clone. Díky za vaše podněty.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Ruža Becelin avatar 10.8.2014 10:47 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proc neudelat svnadmin hotcopy na jine misto a pak git svn clone /path/to/hotcopyrepo?

10.8.2014 13:34 Milan Beneš | skóre: 17 | blog: Kraft_durch_Freude
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Já jsem měl za to, že svnadmin hotcopy se musí opřít o repozitář, nikoliv o working copy. Nebo to funguje tak, že ze vzdáleného repozitáře dotáhne pouze ta data, která chybí ve working copy, tyto dvě množiny sloučí a naleje je do repozitáře, který je specifikován jako třetí argument příkazu svnadmin?
Josef Kufner avatar 10.8.2014 21:32 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Working copy ti je na nic. Z té dostaneš jen stav po posledním commitu.
Hello world ! Segmentation fault (core dumped)
Řešení 1× (Milan Beneš (tazatel))
10.8.2014 14:16 Sten
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Odpovědět | | Sbalit | Link | Blokovat | Admin
Working copy neobsahuje historii, takže ne. Bez historie to možné je, prostě vytvořte nový SVN repozitář, zkopírujte tam tu working copy a proveďte commit.
10.8.2014 21:54 Milan Beneš | skóre: 17 | blog: Kraft_durch_Freude
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravím, díky za info. Budu se s tím tedy muset popasovat jinak.
14.8.2014 15:10 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Rekonstrukce svn repository z working copy
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tento dotaz znamenitě ilustruje, proč je v mnoha případech lepší používat verzovací systémy, které nerozlišují mezi repository a working copy (s trochou nadsázky řečeno). V případě Mercurialu nebo Gitu by rekonstrukce celé repository z kteréhokoliv klonu nebyla žádný problém. Asi by se mohlo stát, že by v některém klonu nebyly naklonované všechny větve, ale ty větve, na kterých aspoň někdy někdo pracoval, by se určitě právě na stroji daného uživatele dohledaly.

SVN neklonuje celou repository a tudíž je mezi pracovní kopií a repository jako takovou propastný rozdíl. Repository včetně historie není možné obnovit z pracovní kopie. Takže když už se člověk dostane do situace, kdy o historii (nedobrovolně) přišel, myslím, že je to ten správný okamžik pro přechod na Git. A když někdo trvá na uživatelském rozhraní co nejpodobnějším SVN, pak může být Mercurial dobrá volba.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.