V prípade projektov s otvoreným zdrojom (ako je tento) má každý prístup na čítanie do úložiska a každý môže do projektu prispievať. Ako sa teda tieto príspevky kontrolujú? Keby sa zmien mohol odovzdať ktokoľvek, projekt by bol trvale nestabilný a pravdepodobne trvale narušený. V tejto situácii sa zmena spravuje odovzdaním súboru opravnej záplaty vývojárskemu tímu, ktorý má prístup na zápis. Ten môže najskôr skontrolovať opravnú záplaru a potom ju buď odoslať do úložiska, alebo vrátiť späť autorovi.
Súbory opravnej záplaty sú jednoducho súbory zjednotených odlišností, ktoré zobrazujú rozdiely medzi vašou pracovnou kópiou a základnou revíziou.
Najprv musíte urobiť a otestovať vaše zmeny. Potom namiesto použitia → v nadradenom priečinku vyberiete →
teraz môžete vybrať súbory, ktoré chcete zahrnúť do opravnej záplaty, rovnako ako pri plnom odovzdaní. Takto sa vytvorí jeden súbor obsahujúci súhrn všetkých zmien, ktoré ste vo vybraných súboroch vykonali od poslednej aktualizácie z úložiska.
Stĺpce v tomto dialógovom okne je možné prispôsobiť rovnakým spôsobom ako stĺpce v dialógu Skontrolovať zmeny. Pre ďalšie podrobnosti si prečítajte časť “Lokálny a vzdialený stav”.
Kliknutím na tlačidlo Možnosti môžete určiť, ako je opravná záplata vytvorená. Môžete napríklad určiť, že zmeny v zakončení riadkov alebo bielych znakoch nebudú zahrnuté v konečnom súbore opravnej záplaty.
Môžete vytvoriť samostatné opravné záplaty obsahujúce zmeny v rozdielnych sústavách súborov. Samozrejme, ak vytvoríte súbor opravnej záplaty, urobíte v ňom ďalšie zmeny tých istých súborov a potom vytvoríte ďalšiu opravnú záplatu, druhý súbor opravnej záplaty bude obsahovať obe sústavy zmien.
Stačí uložiť súbor použitím názvu súboru podľa vášho výberu. Súbory opravnej záplaty môžu mať ľubovoľnú príponu, ktorá sa vám páči, ale podľa konvencie by mali používať .diff
alebo .dif
príponu. Teraz ste pripravení odovzdať svoj súbor opravnej záplaty.
.txt
, ak ho chcete poslať e-mailom niekomu inému. S obyčajnými textovými súbormi sa často manipuluje pomocou e-mailového softvéru a často sa stáva, že medzery a znaky nového riadku sa automaticky prevedú a skomprimujú. Ak sa to stane, oprava sa neprebehne hladko. Takže použite ako príponu .patch
alebo .diff
pri uložení súboru opravnej záplaty.Opravnú záplatu môžete tiež uložiť do schránky namiesto do súboru. Možno to budete chcieť urobiť, aby ste ju mohli vložiť do e-mailu na spracovanie ostatnými. Alebo ak máte na jednom stroji dve pracovné kópie a chcete preniesť zmeny z jednej do druhej, je to pohodlný spôsob vykonania opravnej záplaty schránkou.
Ak chcete, môžete vytvoriť súbor opravnej záplaty zvnútra dialógových okien Odovzdania alebo Kontroly úprav. Jednoducho vyberte súbory a použitím položky z kontextovej ponuky vytvorte opravnú záplatu z týchto súborov. Ak chcete vidieť dialógové okno Možnosti musíte pridržať Shift pri kliknutí pravým tlačidlom myši.
Na vašu pracovnú kópiu sa použijú súbory opravnej záplaty. Toto by sa malo robiť z rovnakej úrovne priečinkov, ktorá bola použitá na vytvorenie opravnej záplaty. Ak si nie ste istí, čo to je, stačí sa pozrieť na prvý riadok súboru opravnej záplaty. Napríklad ak bol prvý súbor, na ktorom sa pracovalo doc/source/english/chapter1.xml
a prvý riadok v súbore opravnej záplaty je Index: english/chapter1.xml
potom musíte použiť opravnú záplatu na priečinok doc/source/
. Ak ste však v správnej pracovnej kópii a zvolíte nesprávnu úroveň priečinkov, TortoiseSVN na to upozorní a navrhne správnu úroveň.
Ak chcete na svoju pracovnú kópiu použiť súbor opravnej záplaty, musíte mať aspoň prístup na čítanie do úložiska. Dôvod je ten, že program zlúčenia musí odkazovať zmeny späť na revíziu, proti ktorej boli vykonané vzdialeným vývojárom.
V kontextovej ponuke pre tento priečinok kliknite na .diff
alebo .dif
súbory, ale môžete sa zvoliť “Všetky súbory”. Ak ste predtým uložili opravnú záplatu do schránky, môžete na otvorenie súboru použiť v dialógovom okne . Táto možnosť sa zobrazí, iba ak ste opravu uložili do schránky použitím → . Po skopírovaní opravy do schránky z inej aplikácie sa tlačidlo nezobrazí.
Prípadne, ak má súbor opravnej záplaty príponu .diff
alebo .dif
, môžete naňho kliknúť pravým tlačidlom myši priamo a vybrať → . V takom prípade sa zobrazí výzva na zadanie umiestnenia pracovnej kópie.
Tieto dve metódy ponúkajú rôzne spôsoby, ako robiť to isté. Prvým spôsobom vyberiete pracovnú kópiu a prehliadate na súbor opravnej záplaty. V druhom kroku vyberte súbor opravnej záplaty a prehliadate pracovnú kópiu.
Po výbere súboru opravnej záplaty a umiestnenia pracovnej kópie sa spustí TortoiseMerge, ktorý zlúči zmeny zo súboru opravnej záplaty s vašou pracovnou kópiou. V malom okne je zoznam súborov, ktoré boli zmenené. Dvakrát postupne kliknite na každú z nich, skontrolujte zmeny a uložte zlúčené súbory.
Oprava vzdialeného vývojára bola teraz použitá na vašu pracovnú kópiu, takže musíte odovzdaním umožniť všetkým ostatným prístup k zmenám v úložisku.