Forráskód letöltése Subversion segítségével

1.  Bevezetés

A Subversion (SVN) segítségével egyszerre több ember is dolgozhat egy program fejlesztésén. Sokkal több információhoz juthat a Subversion programról és/vagy letöltheti a forráskódját a program honlapjáról. Nyomatékosan felhívjuk a figyelmét, hogy olvassa el a dokumentációját és a Subversion GYIK-ot.

2.  Modulok

Egy aktív modul van a jelenlegi Subversion tárolóban:

lyx-devel
Ez az új fejlesztési és stabil szál. A fejlesztés különálló szálakban folytatódik és a trunk mindig stabil marad. Minden jövőbeni fejlesztést ebben a tárolóban csináljuk.

Bár ezeket már nem használjuk, megőriztük őket történelmi célokból:

lyx-tests
Ez a modul különféle .lyx fájlokat tartalmaz, amelyek hasznosak lehetnek tesztelési célból.
www-user
Ez a modul tartalmazza a régi és aktuális web oldalakat.
lyx-1_0_x
Ez a régi stabil kiadás modulja. Már nem dolgozunk benne.
lyx
Ez a régi és instabil fejlesztési modul, de már ez sincs használatban.
www-devel
Ez tárolta a fejlesztői web oldalakat. A tartalma bele lett dolgozva a www-user modul devel alkönyvtárába.
lyxdoc
A LyX 1.3.x dokumentációját tároltuk itt (a BRANCH_1_3_X szálét) és a kiadás előtt beleraktuk a doc könyvtárba. Már nem használjuk a trunk fejlesztéséhez, mivel a dokumentációt belemozgattunk a lyx-devel modulba

3.  Trac forráskód böngésző

A SVM használatával, letölthet egy teljes modult mindössze egy paranccsal. Ha csak egyetlen SVN fájlt szeretne megnézni, fontolja meg a Trac böngésző használatát. A Trac egy eszköz aminek segítségével - többek között - böngészheti az SVN tárolót és megadja a lehetőségét, hogy tetszőleges verziók között különbségeket nézzen meg, csak úgy mint log fájlokat nézzen és hasonlók.

A LyX SVN tároló Trac forráskód böngészőjét megtalálja a LyX honlapon. A legvalószinűbb, mégis, hogy le akarja tölteni a teljes modult. Ha igen olvasson tovább.

4.  Anonymous SVN hozzáférés

Abban az alkönyvtárban, ahol a forráskód helyi másolatát el szeretné helyezni, adja ki a következő parancsot:

 svn co svn://svn.lyx.org/lyx/lyx-devel/trunk lyx-devel

Ez létrehoz egy könyvtárat lyx-devel és letölti a fájlokat ebbe a könyvtárba. (Egy friss másolatnak kb. 150MB a helyigénye. Habár, a fordításhoz, sokkal több helyre lehet szüksége, ez akár 800MB is lehet.)

Természetesen kiadhatja az svn co svn://svn.lyx.org/lyx/www-user/trunk www-user parancsot is, függően attól melyik modult szeretné letölteni.

5.  Az első letöltés után

Ha a kód frissült, csak cd a lyx-devel könyvtárba és adja ki a következő parancsot:

 svn update

Ez a varázslatos parancs csak azokat a fájlokat fogjka letölteni, amelyek megváltoztak vagy hozzá lettek adva a modulhoz. Megtakarítva önnek (és persze a szervernek) rengeteg időt.

Ha csak azt szeretné ellenőrizni, mi változott a lokális másolatában, a tárolóban lévő fájlokhoz képest, adja ki a következő parancsot:

 svn status

Ha azt szeretné ellenőrizni mi változott a szerveren, de még nem frissült a lokális másolatában, a következő parancsot adja ki :

 svn status -u

6.  A forráskód lefordítása

Csak kövesse INSTALL fájlban leírt utasításokat, amennyiben a rat fájlt töltötte le. A stabil modul lefordításához, ki kell adni a autogen.sh, configure, make, és make install parancsokat.

Ha le akarja fordítani és futtatni akarja a fejlesztés alatt álló kódot, a dolgok egy kicsit bonyolultabbak, mint egy stabil kiadás esetén. Szüksége lesz a automake, autoconf, és a gettext programokra, amelyeket letölthet a kedvenc GNU ftp oldaláról.(Kezdje a gnu.org oldalon, ahol talál sok tükörszervert.) Miután mindezeket telepítette, futtassa le az Allan Rae által írt autogen.sh fájlt. Ez el fogja végezni a megfelelő dolgokat és utasítani fogja, hogy futtassa a configure és make programokat.


7.  Forráskód módosítása

Komolyan vesszünk minden kreatív ötletet. Hiba javításokat, dokumentációt és az új funkciókat mindig gondosan megnézzük és rendszerint el is fogadjuk persze számos kivétellel. A stabil változathoz új funkciókat csak nagyon ritkán hagyunk jóvá. Azt a dokumentációt, ami nem követi a DocStyle követelményeit, rendszerint nem fogadjuk el. Ettől függetlenűl, örülünk minden közreműködésnek.

Amennyiben változtatásokat szeretne végezni a LyX-en, a legjobban úgy jár, ha az SVN aktuális forráskódot módosítja, mintsem az utolsó stabil változatot. A következő listán megtalálja mit tegyen első nekifutásra:

  • Frissítse a forráskódját az svn update paranccsal. Egy régi forráskódhoz sokkal nehezebb egy patch-et hozzáadni ezért jobbára nem foglalkozunk velük.
  • Módosítsa a fájlokat. (Módosíthatja őket a helyi SVN fában ahol vannak, vagy kimásolhatja őket máshova és módosítás után visszamásolhatja azokat az eredeti helyre.)
  • Futtasa az svn diff > mypatch.diff parancsot a patch létrehozásához
  • Tömörítse a patch-et a gzip használatával, és küldje el azt a LyX fejlesztői levelező listára.

8.  Hozzáférés módosítással ssh használatával

Amennyiben nagyon sok patch-et készít, amelyeket a LyX csapat bepít a kódba, kaphat módosítási jogot is az SVN-hez. Ebben az esetben, minden nagyon leegyszerűsödik. Az annonymous belépés helyett töltse le a forráskódot a következő paranccsal:

 svn co svn+ssh://svn.lyx.org/lyx/lyx-devel/trunk lyx-devel

Ha az operációs rendszerben használt felhasználói neve különbözik az SVN felhasználói nevétől, akkor használja a következő paranccsot:

 svn co svn+ssh://username@svn.lyx.org/lyx/lyx-devel/trunk lyx-devel

Ekkor a változásait az SVN fába az svn commit parancs futtatásával viheti be, ahelyett hogy elkészítené a patch-et és elküldené azt e-mail-ben.

A LyX fejlesztői Weboldal és a LyX honlapja szintén Subversion-ban van tárolva. Valószinűleg nem éri meg letölteni őket kivéve, ha van írási joga. Megtalálja őket a www-user modulban.

9.  SVN szálak

A LyX fő fejlesztése SVN szálakban történik. Ha szeretne segíteni fejleszteni vagy tesztelni ezeket a szálakat, letöltheti őket a következő paranccsal:

 svn co svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_6_X lyx-1.6.x
Szál neveFelelős fejlesztőStátuszMegjegyzés
trunkJMatosinstabilfő fejlesztési szál
BRANCH_1_6_XJSpitzmstabilAz 1.6 sorozat stabil szála

Van pár régebbi már nem használt szál:

Szál neveFelelős fejlesztőStátuszMegjegyzés
BRANCH_1_5_XJSpitzmstabilAz 1.5 sorozat stabil szála
BRANCH_1_4_XJMarcstabilAz 1.4 sorozat stabil szála
BRANCH_1_3_XJMarcstabilAz 1.3 sorozat stabil szála
BRANCH-1_2_XJMarcstabilAz 1.2 sorozat stabil szála
BRANCH_1_1_6JMarcstabilAz 1.1.6 sorozat stabil szála