» »

Subversion (SVN) - kaj priporočate?

Subversion (SVN) - kaj priporočate?

dunker ::

Lep pozdrav vsem skupaj!

Ker vsak dan spišem kar lepo količino kode (mostly PHP) in sem si pred eno uro (ja, ob dveh ponoči po nekaj petkovih večernih pivih se spravim programirat, hehe) prvič v življenju uspel po nesreči povozit pol ure truda, sem se odločil, da si iz praktičnih razlogov in iz same radovednosti končno omislim nek SVN sistem.

Potreboval bi nek SVN server, ki teče na Windowsih (7). Če kaj pomaga, imam že inštaliran XAMPP (torej tudi Apache) - omenjam zato, ker baje neki SVN serverji bazirajo na Apachu, ali nekaj podobnega. V bistvu nisem še dovolj domač v teh vodah, da bi točno vedel, o čem govorim. Ampak vsaj priznam. :)

Kaj mi priporočate? Doseči hočem v bistvu to, da bom lahko po koncu vsake programerske seanse commital kodo v SVN repozitorij z uporabo nekega klienta kot je Tortoise SVN. Optimalno bi bilo, če bi lahko s SVN serverja preko lokalne mreže updatal tudi kodo na svojem netbooku, ne samo na mojem primarnem računalniku, na katerem bo tekel tudi SVN server.

Upam, da mi lahko kdo pomaga in da je razumljivo, kaj bi rad dosegel. :D

Hvala vnaprej,

Anže

trnvpeti ::

programer in ne uporabljas svn?
programer in ne uporabljas google?
google ze kar pod prvim zadetkom priporoca resitev.

krho ::

Baazar samo en .bzr direktorj in ne v vsakem direktoriju svoj .svn.
Pa ne rabiš strežnika :)
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net

HellRaiseR ::

VisualSVN je posebej prirejen za windows sisteme. Tudi instalacija in konfiguracija je zelo preprosta.

c00L3r ::

Namestitev in konfiguracija SVN strežnika na Windows. Priporočam da imaš SVN strežnik na drugem računalniku (ali pa vsaj drugem disku), kot boš imel delovno mapo (ki jo potem checkout-aš).

Gandalfar ::

razmisli o najemu github.com projekta, ce mislis deliti repozitorij z ostalimi

Phoebus ::

gandalfar: all your code are belong to us

LeQuack ::

Za domače projekte ne rabiš svn strežnika in tudi nima smisla, če boš ti edini dostopal do njega. Svn repozitorij se lahko nahaja nekje na računalniku, najbolje na kakem ekternem disku oz disku, ki ni enak working direktoriju.
Quack !

Kami ::

Za domače projekte ne rabiš svn strežnika in tudi nima smisla, če boš ti edini dostopal do njega. Svn repozitorij se lahko nahaja nekje na računalniku, najbolje na kakem ekternem disku oz disku, ki ni enak working direktoriju.


Se strinjam.

Vsekakor je dobro imeti SVN repozitorij na drugem računalniku / strežniku, tudi, če do njega dostopa samo en uporabnik (varnostna kopija).

Drugače pa je zadnje čase veliko "hype-a" okoli GIT-a in github-a.

Zadeva (github) je iz socialnega vidika sicer všečna, sam GIT pa je po mojem mnenju preveč "over hypan", ker je na voljo še veliko podobnih isto ali še bolj zmogljivih alternativ - Bazaar, Mercuriral.

dunker ::

Najlepša hvala, fantje, se bom zdajle vrgel na glavo v vse tole in si postavil nekaj ustreznega. :D Res hvala.

keworkian ::

http://tortoisesvn.tigris.org/

JAz uporabljam tole, fletna zadevca.
Obscenities in B-Flat

imagodei ::

Še en glas za VisualSVN. Simple, kjut.

Za clienta pa seveda tortoiseSVN
- Hoc est qui sumus -

Zgodovina sprememb…

  • spremenil: imagodei ()

Looooooka ::

VisualSVN FTW!
pa se lepo se integrira v visualstudio.

Invictus ::

Drugace obstaja kar nekaj zastonj CVS ali Subversion strežnikov na internetu.

Recimo http://www.straw-dogs.co.uk/09/20/6-fre...

Če pa se s tem ukvaraš profesionalno, ti pa ne bo najbrž odveč dati nekaj denarja za zanesljivo rešitev.

LP I.

c00L3r ::

Uporabljam VisualSVN za strežnik. Za odjemalca pa uporabljam Tortoise SVN. Vse je brezplačno.

robotek87 ::

odpri si projekt pri codeplex... imas moznost subversiona... potrebujes samo nek odjemalec (TortoiseSVN) da nardis lokaln checkout...

Ce ti je pa za komplicirat pa uporab clearcase :D

BadB0y ::

Uporabljam VisualSVN za strežnik. Za odjemalca pa uporabljam Tortoise SVN. Vse je brezplačno.



Je tudi mene premalo da sprobam tole kombinacijo visualsvn za server ampak tukaj naletim na tezavico. Če npr. iz skladišče izbrišem nek dokument in grem gledat dnevnik revizije najdem številko revizije in stisnem odpri ali pa da shranim revizijo mi javi error url 'https://streznik:port/svn/nekamapa' refers to a directory. Kaj delam narobe ?


[MYTiX] ::

A folk v letu 2009 se vedno uporablja SVN in bog pomagej CSV??
Predlagam git, bzr, mercurial. Veliko lazje za delat z njimi in lazje za postavit zadevo.

Github je tudi vredu, ce hoces zadevo delit z drugimi, da se ti ni treba ukvarjat s svojim remote serverjem.
podpis

trnvpeti ::

in kateri git (visual) client?

Kami ::

TortoiseGit.

trnvpeti ::

in to dela samo v winsih!
git odpade

mercurial?
kateri (visual) client?

in kaksna je prednost(novost) glede na subversion, razen, da je komplet history pri clientu, zaradi tega posledicno hitrejsi diff,...

in ce se odstejes, da smo ze skoraj vsi na hitrih internet povezavah

[MYTiX] ::

git je cross platform. Ustvarjen je bil za linux kernel repo, zdej so ga pa posvojili na veliko opensource projektih (gcc, wine, google android, qt, vlc...).
Ne vem pa cemu bi uporabljal visual client?
Za mercurial si pa poglej Kiln
podpis

trnvpeti ::

Zato, ker bi to uporabljali nekateri, ki niso tako vesci
pa nic nisi napisal, kaksne so prednosti git pred svn

Zgodovina sprememb…

  • polepsal: Mavrik ()

[MYTiX] ::

http://whygitisbetterthanx.com/
Meni (celotni nasi ekipi) git workflow veliko bolj odgovarja.
Branchanje, merganje med branchi je super izi. Veliko lazje hendlas konflikte.
Zadeva je tudi veliko hitrejsa, ker commitas spremembe lokalno in pushas ko imas nek feature koncan. Pa tudi ko pushas na remote branch, je zadeva hitrejsa od svn, ker je vse skompresirano.
Vsakemu commitu je dodan hash, tako da je prakticno nemogoce dobit koruptano kodo.
Pri nas imamo se post push hooke, ki glede na ime brancha izvedejo razlicne akcije (pozenejo teste, deployment na staging, produkcijo...).
Je pa tako, da se na racun te fleksibilnosti poveca kompleksnost sistema, kar ni najbolj prijazno do zacetnikov (ceprav svn imo tudi ni).

EDIT:
Aaddons Mozilla Team se tudi seli na git
podpis

Zgodovina sprememb…

  • spremenil: [MYTiX] ()

kopernik ::

Mene zanima v kakšnem smislu je merganje super izi ?

Po mojih izkušnjah nikoli ni bilo izi in tudi ne vem, kako je lahko izi, ker je potrebno za pravilen merge razumeti, kaj program počne. Nemalokrat se tudi ne ve, ali je pravilneje vzet segment kode X ali segment kode Y iz dveh oz. večih vej in se to ugotovi šele po posvetu vpletenih developerjev. Če se ne motim, sem nedavno bral razne peripetije pri linux kernel developerjih, ko je potrebno narediti release. Ne vem, doslej sem razen trivialnih zadev večinoma raje ročno mergal večje spremembe.

Z ostalim se pa povečini strinjam.

Looooooka ::

Kako je lahko 1x -> Merge...se bl easy?
Btw...k glih tok git hvalite vsi.
Je kje kksn klient, ki ma popolno integracijo z visual studijem(razlog zakaj vecinja ljudi na konc uporablja visualsvn)...in isto primerljiv windows server(ce bi ze razmisljal o prehodu potem ni sans da grem nazaj na rocno editiranje config fajlov).

Zgodovina sprememb…

  • spremenilo: Looooooka ()

[MYTiX] ::

Debata o merganju git vs svn

Pa še debata zakaj nima smisla uporabljat GUI (VS integracije...) za git.

Sej pravim IMO je tukaj flow tako painless, da ne rabiš nobenih vizualnih toolov za reševat probleme (ker problemov preprosto ni :)).
V ozadju imaš odprt še terminal in commitas, pullas, pushas...
IMO raje to, kot premikanje roke s tipkovnice na miško, da poklikaš tistih par zadev.
podpis

Zgodovina sprememb…

  • spremenil: [MYTiX] ()

Looooooka ::

no kokr sm sel na google pogledat je razlog zakaj tega ni cist simple.
ker je zadeva se zelo "mlada".
kar se tice hitrosti in ukazov...ce pogledas ukaze ni cist nc manj zakomplicirana.
Tko da trenutno ma vsaj kar se mene tice svn veliko prednost...zadvo se da brez problemov integrirat v skor vsak issue tracking software...vsi ta vecji majo pa ze plugine za subversion(npr JIRA).

mojca ::

Git ima vgrajen GUI (git-gui, menda), napisan v Tcl/Tk-ju. Na Mac-u ne dela najbolje, zato za Mac obstaja še GitX, na oknih pa ga itak ni čez Tortoise.

Nekaj prednosti, zaradi katerih imam git mnogo raje (pa ne za vse):
1.) Sediš na vlaku in bi rad nekaj commital. Ni problema. Ves repozitorij je pri tebi.
2.) Na hitro uporabiš GUI (še vedno si na vlaku), da si pogledaš spremembe.
3.) Razvejevanje (branches, tags) je otročje enostavno (na SVN-ju se ga ne dotaknem). Primer: rad bi naredil neko spremembo in se z njo igral, ne da bi pokvaril repozitorij.
4.) Prostorsko sila učinkovito. Pri SVN-ju uporabljam nek repozitorij, kjer na 14-30 dni naredijo release in pri vsakem naredijo tag velikosti 100 MB. Bognedaj, da bi poskušal narediti checkout celotnega repozitorija. Pri Git-u bi to vzelo nekaj kB.
5.) Popraviš dve datoteko, ki bi ju rad commit-al, popravil pa si še eno, ki še ni zrela za oddajo. Pri SVN imaš vsaj manjše organizacijske težave, pri GIT-u pa poveš, kaj bi rad poslal.
6.) Ne potrebuješ tako krvavo strežnika.
7.) Zelo hiter.

Slabost GIT-a: včasih ne želiš pri sebi celotnega repozitorija, težje je postaviti strežnik z uporabniki, ne da bi uporabnikom dal ssh account.

Gandalfar ::

5) pac svn commit -m "foo" imedatoteke.nekaj drugfile.nekaj itd.

Kako pa na gitu postavis uporaben Trac ali kaj podobnega oz. vsaj revision browser?

[MYTiX] ::


Slabost GIT-a: včasih ne želiš pri sebi celotnega repozitorija, težje je postaviti strežnik z uporabniki, ne da bi uporabnikom dal ssh account.


Gitosis - git server + upravljanje z accounti za git userje
podpis

Kami ::

5) pac svn commit -m "foo" imedatoteke.nekaj drugfile.nekaj itd.

Kako pa na gitu postavis uporaben Trac ali kaj podobnega oz. vsaj revision browser?


Redmine med drugimi sistemi podpira tudi Git.

kopernik ::

Mojca, ko greš z vlaka dol, moraš pa sinhronizirati repozitorij. Ogled sprememb, delni commit, razvejevanje in verzioniranje je otročje lahko tudi pri svn-ju. Glede hitrosti in velikosti imaš povsem prav.

Mytix, konflikti pri merganju obstajajo povsod, tudi pri gitu. Kolikor se spominjam iz dokumentacije, git uporablja three-way merge algoritem (pa še dva druga za posebne situacije), ki je dober, ni pa vsemogočen. Kot rečeno, predlagam branje kakšne diskusije linux kernel developerjev pred izdajo nove verzije. Itak pa so konflikti predvideni že s strani avtorjev glede na to, da mu lahko nastavljaš obliko označevanja konfliktov in še par drugih eksotičnih podrobnosti. Je pa problem že po svoji naravi takšen, da ga ni orodja na tem svetu, ki bi znal mergati povsem avtomatsko.

Git je po mojem mnenju povsem spodobna zadeva, da ne bo pomote. Po občutku iz bežnih testiranjih (v resnem projektu gita še nisem uporabljal) menim, da je boljši od SVNja. Drugo pa je, kako neko ustaljeno prakso spremeniti v podjetju pri tako občutljivem področju.

BadB0y ::

hmm da se jaz to temo malo "ponucam". Rad bi postavil nek sistem za vodenje *.doc-ov. POstavil sem visuialsvn za streznik za clienta pa tortoise svn. Zadevo lepo deluje edino eno stvar pogresam oziroma nikjer ne najdem razumljive razlage kako lahko z svn-jem v te .doc zapisujes številko revizije. Se pravi da bi mi ob spremembi v dokumentu v nogi zapisalo Št. revizije: xxxx. In tudi ce bi hotel izpisat neko starejso revizijo dokumenta bi mi izpisalo v doc katero ravzijo imam odprto. Ali to sploh gre? Ali ima kdo kakšno alternativno resitev za to ?


Gandalfar ::

subversion je neprimerno orodje za .doc revisionirat. Raje si kaksen document management sistem poglej

BadB0y ::

Gandalfar

Imas katerega v mislih ?


Gandalfar ::

Zal se nisem kaj dosti z njimi delal :(

BadB0y ::

:) Zakaj pa svn nebi bil dober ?


imagodei ::

Ker je SVN za izvorno kodo/plain text, ne pa za bloated stuff, kot ga sproducirajo RTF, DOC in podobni?
- Hoc est qui sumus -

BadB0y ::

imagodei

Pol pa mi ti vstreli resitev. Ker DMS če je to prava stvar za doc. Probaval sem openKM in mi ni vsec.


Gandalfar ::

Ker je SVN za izvorno kodo/plain text, ne pa za bloated stuff, kot ga sproducirajo RTF, DOC in podobni?


ni fora v "bloat" ampak v tem, da so to pac binary fajli, ki jih svn ne razume, posledicno ne more delat pametnih mergev itd.

imagodei ::

@Gandalfar,

ja. Lepo povedano tisto, kar sem jaz nekoliko zakompliciral. :)


@BadB0y,

Alfresco mi deluje precej OK. Drugače pa Sharepoint. Tko na hitro iz glave. Tukajle imaš pa še malo bolj obširen seznam, pa se malo sprehodi skozi.
- Hoc est qui sumus -


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Android projekt (Android Studio) pod version control (SVN)

Oddelek: Programiranje
81389 (1093) Parkelj
»

GitHub Pomoč

Oddelek: Pomoč in nasveti
455245 (3507) BivšiUser2
»

Motivacijski video za "project management/team building" (uvod v teden hekanja OS X-a

Oddelek: Sedem umetnosti
183969 (3556) djabi
»

Source version control za domačo uporabo?

Oddelek: Programiranje
356417 (5488) MrBrdo
»

SVN in CVS?

Oddelek: Operacijski sistemi
252293 (1990) metalc

Več podobnih tem