A.3. Hogyan tesztelj a Subversion segítségével

Egy néha előforduló probléma, hogy "régen még működött, de most már nem...". Következzék hát egy lépésenkénti leírás, mely segít a probléma megtalálásában. Ez nem az átlagos felhasználóknak szól.

Először is, be kell szerezned az MPlayer forrás fáját a Subversionből. Az utasításokat megtalálod a letöltési oldal Subversion részében.

Ezután lesz az mplayer/ könyvtárban a Subversion fáról egy pillanatképed, a kliens oldalon. Ezután frissítsd ezt a kívánt dátumúra:

cd mplayer/
svn update -r {"2004-08-23"}

A dátum formátum YYYY-MM-DD HH:MM:SS. Ezen dátum formátum használata biztosítja, hogy benne legyen minden olyan javítás, ami az adott dátumig commit-olva lett és bekerült az MPlayer-cvslog archívumába.

Majd folytasd, mint egy normális frissítést:

./configure
make

Ha olyan olvassa ezt, aki nem programozó, annak gyorsabb megkeresni a probléma forrását bináris keresés használatával — ekkor a hiba helyét a keresési intervallum ismételt felezéseivel határozza meg. Például a probléma előfordult 2003 közepén, akkor kérdezd meg, hogy "Már ott volt a hiba?". Ha igen, akkor menj vissza április elsejére; ha nem, menj október elsejére, és így tovább.

Ha nagyon sok hely van a merevlemezeden (egy teljes fordítás jelenleg 100 MB és 300-350 MB körül van a hibakereső szimbólumokkal), másold át a legrégebbi tudvalevőleg működő verziót, mielőtt frissítenél; ezzel időt spórolsz, ha vissza kell lépned. (Általában le kell futtatni a 'make distclean'-t egy régi verzió újrafordítása előtt, így ha nem készítesz mentést az eredeti forrás fádról, újra kell fordítanod mindent, ha visszajössz a jelenbe.) Alternatívaként használhatod a ccache-t a fordítás felgyorsítására.

Ha megvan a nap, amikor a probléma megjelent, folytasd a keresést az mplayer-cvslog archívum segítségével (dátum szerint rendezve) és egy sokkal precízebb svn update-tel, melybe órát, percet és másodpercet is írsz:

svn update -r {"2004-08-23 15:17:25"}

Így könnyen megtalálod azt a javítást, ami okozta.

Ha megvan a javítás, ami a problémát okozta, majdnem győztél is; jelentsd az MPlayer Bugzilla-n vagy iratkozz fel az MPlayer-users listára és küldd el oda. Valószínűleg a szerző jelentkezni fog javítási ötlettel. Addig azonban a javításra is gyanakodva tekint, amíg nem tiszta, hogy hol is van a hiba :-).