Portál AbcLinuxu, 11. května 2025 04:31

Dotaz: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program ?

30.1.2006 20:03 theseus34 | skóre: 4 | blog: the_blog_of_theseus34
Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program ?
Přečteno: 198×
Odpovědět | Admin
Ahoj, predem se omlouvam, jestli pokladam hloupy dotaz, nejsem si jisty, jestli neco takoveho Subversion umi :

Pouzivam SVN pri webdesignu, uz nejaky ten mesic. Moc mi to ale nevyhovuje, hlavne ta koncepce, ze se pred kazdym commitem musim rucne postarat o vsechny nove soubory prikazem svn add, vsechny stare musim poctive projet s svn delete, prejmenovavat musim zase s svn move, atd...

Proste musim pamatovat na kazdy blby soubor, a kdyz to neudelam, pak mam v projektu chaos. To me stve. Obzvlast, kdyz mam projekt s desitkami souboru, obcas nejaky pridam, PHP mi do toho dynamicky generuje dalsi, atd. Je to na zblazneni, vsechno si to pamatovat.

Mne by se libilo, kdybych SVN proste mohl "rict" :

Vezmi si tenhle adresar. Je to nejnovejsi verze projektu. Uloz si zmeny oproti minule verzi. Kdyz nejaky soubor pribyl, tak si ho sakra pridej taky. Jestli neco zmizelo, tak to neres a smaz si ho taky. A tak dale :-)

Aby si ten #!*$"# subversion ukladal zmeny na urovni celeho adresare. Na projektu pracuju sam. To, o co mi jde, vlastne neni nic jineho, jako kdybych si kazdy den taroval aktualni verzi a pridaval ji nekam do archivu. Ale to nepovazuji za pohodlne, elegantni a systemove reseni.

Byl bych vdecen, kdyby mi nekdo doporucil jiny (osvedceny) program pro verzovani, nebo poradil, jak ten SVN donutit delat to, co chci. Predem dekuji za odpovedi a omlouvam se za tu sahodlouhou litanii.;-)
Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

30.1.2006 20:40 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proste musim pamatovat na kazdy blby soubor, a kdyz to neudelam, pak mam v projektu chaos.
Ano, v projekte musíš pamätať na každý súbor. Ak tak nebudeš robiť, budeš mať v projekte chaos nezávisle od SVN. Bud vdačný SVN, že Ťa núti toto robiť.
PHP mi do toho dynamicky generuje dalsi,
Akýkoľvek generovaný obsah nemá čo robiť pod správou verzií.
To, o co mi jde, vlastne neni nic jineho, jako kdybych si kazdy den taroval aktualni verzi a pridaval ji nekam do archivu.
Ano, to je presne to čo chceš, a riešenie, ktoré navrhuješ, je asi na splnenie Tvojho cieľa to správne. Na zamyslenie vlastne je, či k tomu potrebuješ Subversion; snažíš sa ho asi použiť na niečo, na čo určené nie je.

Urob si skript, ktorý Ti pri každom spustení uloží pracovný adresár do archívu (tar + bzip2, tar + gzip, zip, ...), pričom pre meno súboru použije aktuálny čas. Ked´ budeš chcieť urobiť "commit", spustíš skript a nemusíš sa zaoberať z operáciami add, del, mkdir, etc., proste vyrobíš snapshot pracovného adresára. Akurát neviem, či Ti takýto spôsob nebude zvyšovať práve ten chaos v projekte, ked´ nebude existovať mechanizmus, ktorý by Ťa nútil udržiavať poriadok. A z dotazu vyplýva, že na sebakontrolu si trochu lenivý (myslené polovážne, položartom). :-)
30.1.2006 20:49 theseus34 | skóre: 4 | blog: the_blog_of_theseus34
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
No jo, no. Asi budes mit pravdu. Nejspis si napisu ten jednoduchy skriptik... Mne se proste libil ten krasny SVN system, ze kod je na jednom miste (repository), kdykoliv a kamkoliv si muzu vytahnout jakoukoliv verzi, a ze ke kazde nove ukladane verzi musim pridat komentar :-).

Co se tyce toho chaosu v projektu, je to popravde receno prvni vetsi projekt, co delam, takze takove to caste pridavani, mazani a presouvani je alespon trosicku omluvitelne, ne ? ;-)
Josef Kufner avatar 31.1.2006 02:40 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
Odpovědět | | Sbalit | Link | Blokovat | Admin
svn st
svn add *
svn st | grep ^! | sed s/!// | xargs svn del
svn move můžeš použít místo příkazu mv. On ten soubor přesune a uloží si o tom záznam.

Řešení s tarem je poněkud nepohodlné, to bych radši nascriptoval manipulaci se svn. Ať už kvůli jednoduchému generování diffů, hooků na serveru nebo velmi jednoduché obnovování souborů z minulé verze.

ps: píšu to z hlavy, tak to berte s rezervou
Hello world ! Segmentation fault (core dumped)
31.1.2006 08:45 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
grep ^! | sed s/!//
je ekvivalent
sed -n '/^!/{s/!//;p}'
a to co jsi chtěl udělat jde taky
sed -n 's/^!//;T;p'
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
31.1.2006 14:00 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
tr -d '!'
1.2.2006 10:12 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
To rozhodně není totéž.
  1. Nevybere to jen řádky začínající na !
  2. Nesmaže to jen ! na začátků těchto řádků (co třeba jména obsahující ! kdekoliv v sobě)
Najdi si slovo ekvivalentní ve slovníku cizích slov, pokud nevíš co znamená.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
1.2.2006 10:26 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
$ echo -e '!hu!ih\nuh!uh' | tr -d '!'
huih
uhuh
$ echo -e '!hu!ih\nuh!uh' | grep '^!' | sed 's/!//'
hu!ih
$ echo -e '!hu!ih\nuh!uh' | sed -n 's/^!//;T;p'
hu!ih
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
mj41 avatar 1.2.2006 10:48 mj41 | skóre: 17 | blog: mj41 | Brno
Rozbalit Rozbalit vše Re: Muze SVN verzovat cely adresar najednou ? Nebo nejaky jiny program
Jj, presne takhle to pouzivame. Teda trochu sloziteji. Mame vyvojovou, testovaci a ostrou verzi jednotlivych aplikaci. Pracujem z windozu na adresari namountovanem pres sambu a pouzivame TortoiseSVN. Pokud chceme kod prenest napr. na test, tak do logu pridame UPDATE_TEST_jmenoaplikace a after commit hook provede update nad testovacim adresarem. Podobne na ostre, ale tam se to jeste prenasi pres rsync na cluster. Krome toho bezi v cronu posilani svnstatus emailu - sledujicich zmeny v jednotlich adresarich a svnversion vytvarejici php soubor s cislama verzi aplikaci. Tod asi vse. Zaver teda je, ze svn se hodi i pro vyvoj na webu.

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.