Tato příručka poskytuje základní přehled o aplikaci opravy programu nebo souboru.
Příkazem použitým pro použití patchů je příkaz náplasti, ale pro použití náplasti je třeba použít příkaz diff k dodávání rozdílu, který je třeba opravit.
Proč byste vytvořili patch
Představte si, že máte soubor HTML následujícím způsobem:
head>
Vítejte na MySite h1>
body>
html>
Výše uvedený zdroj při načítání do webového prohlížeče zobrazí slova "Vítejte v MySite".
To je běžné při programování pro tam být více verzí stejného souboru. Například tam bude jedna verze, která je aktuální živá verze, tam by byla další verze ve vývojové větvi, která může obsahovat více změn, nakonec může existovat další verze na větev vydání.
Uvedená verze by byla verze používaná reálnými uživateli (tj. V tomto případě návštěvníci webových stránek MySite). Řekněme, že MySite je ve verzi 1.0. Po vývojové fázi vytvoříte odbočku, která by byla v tomto případě 1.1. Rozvojová pobočka by mohla být před vydáním pobočky, protože může obsahovat změny, které se nepředpokládají k vydání ve verzi 1,2, ale budou pro verzi 1.1.
Představte si, že byla chyba, kdy MySite by měl být nazýván YourSite. Mohli byste jít do každé pobočky postupně a provést změny v živé verzi, vývojové verze a uvolněné verze byste mohli provést změnu jako hot fix v přímém přenosu a pak aplikovat patch na vývoj a uvolnění větví.
Napsaný příklad
Vytvořte soubor s názvem myfile.html s následujícím kódem:
head>
Vítejte na MySite h1>
Jedná se o zpracovaný příklad opravy zdrojového kódu. p>
body>
html>
Vytvořte další soubor s názvem myfile_v2.html s následujícím kódem:
head>
Vítejte na vašem webu h1>
Jedná se o zpracovaný příklad opravy zdrojového kódu. p>
body>
html>
První soubor je původní webová stránka s nadpisem "Vítejte v MySite". Druhý soubor je stejný jako první soubor, kromě MyFile je přejmenován na YourFile v textu.
Jak vytvořit soubor Diff
Abychom vytvořili patch, musíme rozlišovat mezi myfile.html a myfile_v2.html.
Můžeme to provést pomocí příkazu diff takto:
diff -u myfile.html myfile_v2.html> myfile.patch
Soubor myfile.patch můžete otevřít v editoru nano následujícím způsobem, abyste jej mohli zobrazit:
nano myfile.patch
Řádky, které jsou nezměněné, jsou zobrazeny modře. Odstraněné čáry jsou zobrazeny červeně a řádky, které byly přidány, jsou zobrazeny zeleně.
Jak použít opravu pomocí příkazu Patch
Chcete-li opravu použít na stránku myfile.html, použijte následující příkaz:
patch To provede změny provedené pomocí příkazu diff do původního souboru myfile.html. Pokud chcete obnovit náplast tak, aby se myfile.html vrátil zpět k původnímu způsobu použití následujícího příkazu: patch -R Příkaz patch lze použít k použití záplat v celé struktuře adresářů. Existují mnohem lepší nástroje než příkaz patch pro vytváření záplat a zajištění správné kontroly zdroje. Existuje důvod, proč tolik rozvojových projektů používá GIT pro řízení zdrojů. GIT usnadňuje vytváření konzistentní strategie větvení. Příkaz patch je v pořádku pro použití rozdílů na skript bash nebo něco jednoduchého, ale stejně snadno můžete vytvořit záložní kopii souborů, které chcete opravit, a jednoduše zkopírovat nové soubory na stejné místo. Pro více informací použijte příkaz man: man patch Jak obnovit opravu
souhrn