Linux mě baví :-)
Uživatelem GNU/Linuxu jsem již krásných pár let – stále si umím užívat klidu a pohody, kterou mi tento parádní systém přináší. :-) Poslední dobou jsem však ještě spokojenější, než jsem býval.
První věcí, která mě relativně nedávno (je tomu tak měsíc dva zpátky) oslovila, je git. Git je verzovací systém, který mimo jiné založil Linus Torvalds primárně pro potřeby vývoje linuxového jádra. Oproti SVN, které jsem používal hodně dlouhou dobu předtím, má velmi mnoho výhod – o nevýhodách již mluvit nemohu, protože mi git tak přirostl k prstům, že na něm žádné nevidím. ;-) Snad jen to, že zatím není možné stahovat si jen části repozitáře, což mně osobně ovšem vůbec nevadí, ale někomu by mohlo.
Git oplývá takovou rychlostí, že jsem byl až překvapen – již žádné čekání! Tento fakt vede jednoduše k tomu, že člověk daleko častěji posílá commity než u SVN, kde je nutné i několik minut čekat (zde je to během zlomku vteřiny). Kromě commitů existují ještě tři vrstvy: vzdálený repozitář (jednak pro kolaboraci, jednak pro zálohy), index (ukládá stav souborů a z něj se vlastně později vytahují data pro commit) a pracovní verze (ten stav souborů, který je právě teď – nemusí se shodovat s tím, co se odešle do repozitáře při commitu). To umožňuje opravdu zintenzivnit práci, navíc se hodně eliminuje riziko, že si člověk něco smaže. :-) U gitu jsou běžnou věcí i větve, kde si mohu rozpracovat úplně jinou verzi projektu nebo naopak si v ní držet lokální konfiguraci, kterou nechci ani náhodou zveřejňovat ve veřejném repozitáři. :-) Kouzlo gitu navíc je i v tom, že žádný vzdálený (ať už veřejný nebo soukromý) repozitář nepotřebujete! Git si udržuje lokální repozitář, a to v kořenu projektu (takže již žádné .svn složky rozstrkané všude možně), navíc vzdálených repozitářů je možné mít řadu.
To všechno dohromady vedlo k tomu, že git používám prakticky všude – jak na desktopu, tak na serverech. Kromě běžných softwarových projektů si v gitu udržuji i práce do školy, různé důležité dokumenty, bashové skripty, konfigurační soubory, …
Postupně se tak dostávám k další věci, která mě uchvacuje po celou dobu mé linuxové existence, ale která v poslední době hodně zesílila. Dříve jsem si psal jednoduché bashové skripty jen na komplikovanější a hodně často prováděné činnosti (spouštění určitých programů s extra parametry, připojování/odpojování USB mass storage zařízení, kontrola vypáleného CD/DVD apod.). Nyní si píši skripty na automatizaci všeho, co je jen trošku náročnější než jeden dva příkazy a u čeho je šance, že to použiji ještě alespoň párkrát. Tedy jednak různé skripty na hromadné zpracování dat/souborů v projektech, automatická aktualizace lokální gitové větve ze vzdáleného repozitáře, vč. přepínání větví a rebasingu a v neposlední řadě i skripty na různé úkony správy serveru, kde je potřeba dělat věci precizně a často i rychle (přeci jenom než napíšu dva tři příkazy, které mají mít rychlou návaznost, tak mi to pár vteřin dá a mnohdy už si toho může někdo všimnout).
Když pak člověk ještě programuje v ruby, tak mu snad ani nezbývá nic jiného než být spokojený. :-) Oproti céčku například se dá naprogramovat hodně věcí za relativně málo času, navíc syntaxe je hodně intuitivní, takže se mnohdy vůbec nemusím dívat na danou věc do manuálu a prostě píšu. :-) Neodsuzuji céčko – je to vynikající jazyk, zvláště na projekty, kde je potřeba zajistit výkon, bezpečnost nebo nízkoúrovňovější záležitosti. Každý zkrátka na něco. Obojí se ale musí umět, jinak to nemá cenu. Ale ruby bych už z ruky nedal. ;-)
Je docela dost možné, že kdybych si ještě nastudoval capistrano, tak bych byl ještě spokojenější, ale s mým vzdáleným repozitářem umístěným lokálně ;-) by to podle všeho moc nešlapalo, takže zatím zůstávám u osvědčených postupů. :-)
Linux mě zkrátka baví. A jen tak mě bavit nepřestane. Zřejmě nikdy. :-)
Zaškatulkováno v kategorii: GNU/Linux | 28. října 2008