Subversion
Sziasztok!
Szeretnék Tőletek egy részletes, szájbarágós leírást kérni az SVN telepítésről és beállításről magyarul, windows xp-re. Sok leírást végignéztem, és sokszor próbáltam meg telepíteni, de sajnos egyszer sem sikerült beüzemelnem. Otthon tanulom a webfejlesztést több-kevesebb sikerrel, php-t és wamp szervert használok, gondoltam jó lenne svn-t használni saját magam hasznára.
Jelenleg a NetBeans és a PhpEd fejlesztő környezet van a gépemen, hogyan kell ezekhez a programokhoz használni az svn-t?
Köszönettel:
Peter71
■ Szeretnék Tőletek egy részletes, szájbarágós leírást kérni az SVN telepítésről és beállításről magyarul, windows xp-re. Sok leírást végignéztem, és sokszor próbáltam meg telepíteni, de sajnos egyszer sem sikerült beüzemelnem. Otthon tanulom a webfejlesztést több-kevesebb sikerrel, php-t és wamp szervert használok, gondoltam jó lenne svn-t használni saját magam hasznára.
Jelenleg a NetBeans és a PhpEd fejlesztő környezet van a gépemen, hogyan kell ezekhez a programokhoz használni az svn-t?
Köszönettel:
Peter71
google lucky:svn windows
Kliensnek természetesen tortoiseSVN.
Ha megvolt, térjünk vissza rá, mi nem világos.
szerver?
Ha jól értem a következő lépéseket kell csinálnom: telepítem az apache-ot és a Setup-Subversion-1.6.3.msi-t, utána jön a httpd.conf file átírása vagy a VisualSVN-Server-2.0.1.msi telepítése és csak utána jön a TortoiseSVN-1.6.3.16613-win32-svn-1.6.3.msi telepítése.
Fölraktam a wamp-ot és a subversion servert, majd telepítettem a visualsvn-t, mondván a leírás szerint megoldja nekem a problémát, miszerint localhostban dolgozva szeretném az svn-t használni. Nem sikerült.
Akkor most kell a visualsvn vagy inkább én írogassam át a file-t? A visualsvn-ben hogyan tudom beállítani a localhost-ot?
Remélem, van még türelmed hozzám.
Köszönöm:
Peter71
Persze, hogy van. „Eddig azt
„Eddig azt hittem elég hozzá a wamp és a tortoisesvn”
Ez viszont arra utal, hogy a lényegét még nem látod át. A verziókövetés (így az SVN is) áll egy szerverből és kliensekből. Az szerver kezeli a verziókat, a kliensek meg beküldenek frissítést vagy lekérdeznek. Ha csak lokálisan akarsz verziót követni, akkor is lesz szervered, csak helyben fog futni.
A tortoiseSVN a kliens. Beépül a windows intézőbe, overlay ikonokkal jelzi, melyik fájl változott, és kontextmenüje van, amivel műveleteket lehet végezni (pl. kódot beküldeni).
A szerver windowson normálisan szolgáltatásként fut (vagy konzolon daemonként, de kinek jó az), és alapból az svn:// protokollal lehet kommunikálni vele. Az apache csak ahhoz kellhet, hogy http:// -vel is használhasd, és ne kelljen neki külön portot nyitni, de ezzel sztem lokálban fölösleges vacakolni.
A fenti hozzászólásomban adtam linket a 1 click installerre, az telepíti a szervert. De itt is közölnek windows telepítőket.
Le kell tölteni és telepíteni. Rá fog kérdezni, hogy melyik könyvtárban legyenek a repositoryk. Ez minden beállítás.
Ezután létre kell hozni egy repositoryt, és az az svn://localhost/<repo neve> cím alól elérhető. Ez a cím kell majd a kliensnek.
Még mindig nem értem!
Letöltöm a subversion servert és telepítem, ez sikerült, létrehozta a saját könyvtárát. Telepítettem egy kliens programot, ami létrehozott egy könyvtárat önmagának és egyet a repository-nak. (Próbáltam külön letöltött server és kliens programmal és az általad javasolt svn1clicksetup progival is.) Ezek után kell még egy könyvtárat létrehoznom amire jobb klikk és "create repository here.."? Ide töltöm le az általam módosítandó file-okat? Hol vannak a végleges visszatöltött file-ok?
Localhost-ot pedig használnom kellene, mert különben hogy tesztelem az eredményt?
Létrehoztam egy üres könyvtárat és jobb klikk után a repositoryt csináltam belőle. Olyan könyvtárakat és file-okat rakott bele, mint a telepítés elején létrehozott repository-ba. Akkor most mi van? Sok helyen olvasok "branches, truck, tags" vagy valami hasonló nevű könyvtárakról, itt nincsennek?
Köszönöm türelmedet, remélem még kitart egy kicsit.
Peter71
Windows + TortoiseSVN
Ha Windows-on (egyazon gépen) akarod használni a TortoiseSVN szerver és kliens funkcióját is, akkor a TortoiseSVN telepítése után hozz létre valahol egy üres könyvtárat, és mondd rá, hogy csináljon belőle repo-t.
Ezután a kívánt tartalmat az import utasítással tudod belerakni. Az elérési útban file:///C:/path_to_repo/subdir formában tudsz hivatkozni a wondows-os repo-dra. Ha betöltötted a kívánt tartalmat, akkor (van egyszerűbb megoldás is?) törlöd az eredetit, és check out-tal kiveszed újra a repo-ból. Ezzel kapsz egy verziókezelés alatt lévő példányt belőle. Ezután már csak commit meg update kell. Meg - ha szeretnél valamit kihagyatni vele - akkor a properties-ben mondj neki svn:ignore-t.
A többire szép lassan rájössz magad is.
Üdv:
Dávid
nem megy
Error: Unable to open an ra_local session to URL
Error: Unable to open repository 'file:///C:/www/*******' .
Gondoltam berakom a teljes munkámat a work mappába és onnan, ,mint egy elkészült munkát a repo-ba rakom. A TortoiseSVN->repo-browser-en kivül nem sok minden van benne.
Na, biztos repositoryt kell belőle csinálni, az eredmény továbbra is a repo-browser.
alakul
Nincs valami értelmes kezelő felület? Mindig nekem kell emlékeznem mi volt a repo könyvtár neve, csak egy legördülő menüből válogathatok az előzőleg beírtak közül.
Nem kell emlékezni a repo
Egyébként ahogy Dávid írta, még jobban leegyszerűsödik a dolog, mert file:// protokollal is használható az egész.
Szóval ugye tortoiseSVN-nel jobb klikkre repo könyvtárt kell létrehozni (azt mondjuk nem értem, hogy a tortoiseSVN ezt hogy csinálja, adnak hozzá szervert? Vagy csak külön telepített szerverrel működik ez a funkció?). A repo könyvtárral neked többet semmi dolgod nincs. A fájlokat saját db formátumban tárolja. A conf, hooks stb. könyvtárakban szkriptek meg ini-k vannak, ami neked egyelőre nem kell (nyilván a repót lehet vele tweakelni).
Lehet importtal is kezdeti anyagot létrehozni, de talán még egyszerűbb úgy, ha az üres repót kicheckout-olod, és máris rendelkezésre áll a working copy. Abba a könyvtárba kell belemásolni a fájlokat, és lehet nyomni az első commitot. Ebben a könyvtárban minden verziókövetett alkönyvtárban van egy rejtett .svn könyvtár, abban a helyi másolat másolata van, és egyéb információk, például hogy mi a repo címe. (Ezért nem kell azt neked megjegyezni).
working copy?
Kipróbáltam, 34Mb képet felvettem a repoba és a db könyvtárba keletkezett egy 34Mb-os file. Most már hiszek. :)
Most már csak dolgoznom kell. Elméletileg a working copy file-okat megnyitva szerkesztve és mentve működni kell a dolognak.
Még a phped-et vagy a netbeans-t kellene rábeszélnem a használatára.
Ha interneten szeretném használni az svn-t, akkor a szerver programot fel kell telepítenem a tárhelyemre?
Nope
Egyébként ajánlom az Eclipset mondjuk subversive kiegészítővel, az egész használhatónak bizonyult.
Egy working copy-hoz egy
Ez az információ egyébként a rejtett .svn mappákban van. Ha azokat letörlöd, a mappa megszűnik w copy lenni, és egy sima mappa lesz a fájljaiddal, az overlay ikonok is eltűnnek. Továbbá az .svn mappákban vannak a w copy teljes másolata (nem db-ben), innen tudja, hogy melyik fájl változott, és innen is revertál.
A munka pedig értelemszerűen úgy zajlik, hogy commitolod a változásokat.
„Ha interneten szeretném használni az svn-t, akkor a szerver programot fel kell telepítenem a tárhelyemre?”
Így van, ha a repót online szerveren akarod tárolni, akkor oda kell az svn.
.svn
Az svn könyvtárban csak a file-ok vannak, a könyvtárak és a benne található file-ok nincsenek benne, pedig mindegyiken ott van a zöld pipa.
Van még valami, amit tudnom kellene, vagy ez elég a fejlesztés nyomon követéséhez? Olvastam több helyen, hogy írnak hozzá különböző dolgokat.
Minden alkönyvtárban van .svn
Sok más van még. A legalapvetőbb műveletek a commit, az update, a diff, a lognézegetés, a blame, a conflictok kezelése.
De itt csak konkrétumokról tudunk beszélni.
Szeretném beilleszteni a
First have a look at Appendix B of the TortoiseSVN guide. This gives the command-line usage of TortoiseProc.exe.
Egyébként, ha otthon local-ban fejlesztenél php-ban, hogyan helyeznéd el a repository és working copy könyvtárakat? Gyakran nézegetem a localhoston az eredményt, mert még kezdő vagyok a fejlesztés terén.
Köszönöm:
Peter71
Az egy egyszerű angol mondat,
Az az oldal arról szól, hogy a phped nevű program a windows shellt használja, így nincs is szükség integrációra. A második pont ahhoz kell, ha a tSVN parancssorát akarod használni, de én azt még soha nem használtam.
Nálam egy adott könyvtárban vannak a repók, mint minden gépen a világon. Pl. c:/repok. A working copyk meg ott vannak, ahol szükség van rájuk, tehát ha webes projekt, akkor nyilván a webes projektjeim közt...
repo
Elkezdtem dolgozgatni, és commit-al küldtem néhány file-t a repo-ba, hol tudom megnézni mikor mit csináltam? A repo-browser-ben, vagy máshol is tudom követni az eseményeket?
Log
commit
Van arra lehetőség, hogy azt a pár file-t commit-oljam, amin dolgoztam. úgy hogy ne egyesével kelljen őket commit-olni?
Ebből a topikból egy magyar
Igen, és az egyesével komitolás rossz használat is. Egyszerre több fájlt/mappát is ki lehet jelölni a windowsban.
Köszönöm
Remélem belejövök, mint úri fiú a pofozkodásba. :)
Van még néhány dolog, amit nem értek (néhány? húú, ez elég nagyképűen hangzik), branch/tag, switch, revision graph.
Szóval a branches egy
Köszönöm:
Peter71
Verziók
merge
eled egy kész változatba.Azaz tegyük fel, hogy az egyik fejlesztőcsoport fejleszt egy javítást a program 1.x-s változatához, mások egy másik javítást szintén az 1.x-es változathoz, de lehet nem lesz egyszerre publikálva, ezért az 1.x-ből mindketten csinálnak egy branch-et, az egyik javitas1, másik javitas2 néven. Amikor elkészül a javítás, le lett tesztelve stb, akkor bele
merge
elik az 1.x-es stabil változatba, és akkor kiadhatják az 1.x újabb változatát.De persze párhuzamosan folyhat a 2.x-es változat fejlesztése. Ami persze egy másik branch. Ha egyedül fejlesztesz, akkor is talán van értelme ennek, legalábbis, hogy mindig van egy stabil változat, és egy, ami mindig a legfrisseb fejlesztéseket tartalmazza.
Értem, köszönöm a segítséget.
A working copy könyvtáram a
Mit csináltam? Hogyan tudom eltüntetni őket?
Köszönöm:
Peter71
branches és a többi
Azért csak nem hagy nyugodni ez a branch könyvtár. Olvasgattam a neten, de nem értem, több helyen írják, hogy a repo-ban hozzam létre, máshol azt írják a working copy-ban is legyen. Ha a repo-ban hozom létre, akkor hogyan tudom használni? A létrehozott repo könyvtárba utólag tudok ilyen könyvtárakat létrehozni és használni?
Köszönöm:
Peter71