HOME

ADD

EDIT

Linux

Archivace a verze souborů

RCS

tvorbapodadresare, kam se budou ukladat verze
   % mkdir RCS
inicializace souboru soubor.txt + odstrani soubor z aktualniho adresare
   % ci -i soubor.txt
vratit zpet z RCS adresare
   % co soubor.txt
odhlaseni souboru se zamkem, aby s nim nemohli pracovat i dalsi uzivatele, kdyz delam zmeny
   % co -l soubor.txt
po dokonceni zmen jej znovu prihlasime a odemkneme
   % ci -u soubor.txt
pokud se nam nekdy nedari soubor prihlasit ci odhlasit, asi jsme nekdy zapomeli na prepinace -l ci -u (pak je postup ve vytvoreni kopie)
   % cp soubor.txt soubor.txt.backup
   % co -l soubor.txt
   % cp soubor.txt.backup soubor.txt
   % ci -u soubor.txt
zjisteni rozdilu mezi prihlasenou a odhlasenou verzi
   % rcsdiff soubor.txt
zjisteni rozdilu mezi nekolika verzemi
   % rcsdiff -r1.49 -r1.50 soubor.txt
vyvolani verze 1.2, ktera by napr. mohla byt v poradku a bez chyb
   % co -l -r1.2 soubor.txt
odhaleni vinika, kdo soubor spatne vyeditoval (zjisteni kdo kdy a co delal) + "-v" vypise i konkretni verzi
   % rcs2log -v soubor.txt

CVS

CVSuklada soubory do centralniho uloziste, ale uzivatele pracuji vzdy se svou pracovni kopii souboru.

vytvoreni uloziste

   % cvs -d /home/cvsroot init
vlozeni
   % cvs -d uloziste import modul vyrobce verze
   % cvs -d /home/cvsroot import zelenka_mod zelenka ver_0-1
zjednoduseni
   % export CVSROOT=/home/cvsroot
- u vzdalenych systemu napr. :ext:martyn@bobina.monstav.com:/home/fotky - pripujuje se pomoci programu uvedenem v promenne $CVS_RSH (napr. "ssh") nebo pomoci "pserver" vlozeni2
   % cvs import zelenka martyn ver_0-1

vytvoreni pracovniho adresare a import modulu

1. vytvorit si svuj pracovni adresar
   % mkdir ~/cvs
   % cd cvs
2. vytahnout soubor z centralniho uloziste (odhlaseni souboru)
   % cvs checkout zelenka_mod

prace v pracovnim adresari

1.aktualizace verzi (synchornizace)
   % cd ~/cvs/zelenka_mod
   % cvs update
vypis : U ... soubor uspesne aktualizovan
   A ... soubor pridan do uloziste, ale jeste nebyl potvrzen (nutne zadat "cvs commit")
   R ... soubor odstranen, ale jeste nebyl potvrzen ("cvs commit")
   M ... soubor byl upraven v prac. adresari
   C ... konflikt mezi kopii v ulozisti a kopii v pracovnim adresari (musi je vyresit sam uzivatel, kdyz udela automaticky tak je "M")
   ? ... soubor je umisten v pracovnim adresari, ale ne v ulozisti, CVS nevi co s nim

znackovani revizi

oznaciverzi vsechny soubory a soubory v ostatnich podadresarich
   % cvs tag tagname
   % cvs tag tagname filename
oznac jsen ty, ktere jsou stejne, pokud se v prac. adresari verze lisi od verze v ulozisti zkonci (-c)
   % cvs tag -c tagname
   % cvs tag release-1-0 src/sample.c
   % cvs tag release-1-0
   % cvs tag -c release-1-0
jestlize provedeme odhlaseni ci aktualizaci v obvyklem pracovnim adresari, prepise se oznacena verze pres stavajici soubory
		% cvs checkout -r tagname
		% cvs update -r tagname
	pr. 	% mkdir example-rel-1-0 
      % cd /cvs/example-rel-1-0
		% cvs checkout -r release-1-0
pr.
		% cd cvs/example
		% cvs update -r release-1-0

provadeni zmen v modulu s CVS

editovata kompilovat muzeme pouze "odhlasene" soubory, pote zmeny protnout do uloziste (zaregistrujeme je neboli prihlasime)
		% cvs commit		(nutne spustit z mista, ktere je vyse nez soubory, ktere chcete potvrdit)
		% cvs commit soubor.txt	(promitnou se zmeny pouze u jednoho souboru)
selhat muze v pripade potencialniho konfliktu to se da napravit prikazem (spustit nad ulozistem)
		% cvs update
- slucovani souboru (pokud CVS nedokaze upraveny soubor uspesne sloucit s jeho kopii v ulozisti, oznami konflikt. Puvodni verzi ulozi pod nazvem .#soubor.verze v pracovnim adresari a vysledky operace slucovani se ulozi pod puvodnim nazvem souboru)

pridavani souboru a adresaru (plati jak pro soubory tak pro adresar, soubor lze pridat az pote, co CVS zna i adresar)

		% cvs add soubor.txt
		% cvs commit

odstraneni souboru (pred odstranenim z uloziste je nutne soubor nejdrive smazat (v prac. adresari), CVS soubor neodstrani, jen jej presune v ulozisti do poddadresare s nazvem Attic)

		% cvs remove soubor.txt

odstraneni adresare (nejdou odstranit zadnym prikazem, nejdrive je nutne odstranit vsechny soubory v adresari a pak prikazy), priznak -P znamena ze nebude prazdne adresare nacitat

mozneje i odstraneni pomoci rmdir (pozor jestli neobsahuje zalohovane soubory v adresari Attic). Vsichni uzivatele by si pote meli tento adresar taky smazat
		% cvs update -P
		% cvs checkout -P

tvorba vetvi

mampripad, kdy mam konfiguracni soubory pro stabilni servery (starsi verze) a pak testovaci servery (nejnovejsi verze) chci udelat zmenu ve starsi verzi konfiguraku, ale neovlivnit tak nejnovejsi
		% cvs tag -b release-1-0-patches	(cvs tag -b znacka-vetve)
cvs/example-rel-1.0% cvs checkout -r release-1-0-patches (cvs checkout -r znacka-vetve) cvs/example% cvs update -r release-1-0-patches (cvs update -r znacka-vetve, prepise obsah aktualniho pracovniho adresare) slouceni vetvi zpet s hlavnim kmenem
		% cvs checkout example		(cvs checkout modul)
		% cvs update -j release-1-0-patches	(cvs update -j znacka-vetve)
nebo v jednom prikazu :
		% cvs checkout -j release-1-0-patches example		(cvs checkout -j znacka-vetve modul)

zamykani souboru a sledovani

CVSbohuzel neumi zamykat soubory, takze vyvojari tak mohou pracovat na nekolika souborech. CVS napr. umi oznamit kazdou jeho editaci napr. emailem zapnuti sledovani zvolenych souboru
		% cvs watch on (soubory)
zapnuti zasilani zprav ze sledovani (stanu se hlidacem)
		% cvs watch add (soubory)
vypnuti sledovani
		% cvs watch off (soubory)
zruseni zasilani zprav ze sledovani
		% cvs watch remove (soubory)
dalsi moznosti je pomoci :
		% cvs watch add -a edit|unedit|commit|all (soubory)
		% cvs watch remove -a edit|unedit|commit|all (soubory)		
uvolneni pro editaci u sledovanych souboru
		% cvs edit
ukonceni uprav u sledovanych souboru
		% cvs unedit
nastaveni emailu pro uzivatele je v adresari CVSROOT v ulozisti vlozit soubor "users" a polozky maji tento format
      uzivatel:email
		martyn:mkudlacek@centrum.cz

zabezpeceni CVS a pripojeni ke vzdalenemu CSV

definiceSSH do $CVS_RSH (puvodne by prenos probihal pres RSH)
		% export CVS_RSH="ssh"
definice korenoveho adresare $CVSROOT pres SSH (metoda ext)
      da:[[uzivatel]:[heslo]@]hostitel[:[port]]:/cesta_k_ulozisti
		:ext:martyn@bobina.monstav.com:/home/cvsroot
pripojeni
		% cvs -d :ext:martyn@bobina.monstav.com:/home/cvsroot checkout sample

vytvoreni anonymniho uloziste

-prihlaseni pres SSH je bezpecne, ale neprakticke pro uloziste, ktere chceme verejne nabidnout pro cteni - moznost volby nastroje "pserver" (nutne nainstalovat) - viz. trik c.36 (server)

Nejnavštěvovanější

LuštěninySladkéVýpisy z DB WP title atd...Kuřecí a drůbežAndorid 2.2 účet ArchosGulášDisková poleOracleOCS InventoryMonitFotbalTinyCore LinuxWebkameryQuantaPrenatální kurzDatabázové funkceActive DirectoryVěci na cestováníPřílohySynchronizaceAkceOpravyWIFIeGroupWareUTB ClonezillaSynology 411+Vepřové masoAntispamCodeigniterPanteřiDoxygenGrilování - grillGrubElasticsearchSynology 413jBezpečnostFTP funkcelXjsHjzLTFplUbOHUTBVlastní příkazy LinuxuLéčba - vlastní receptyArchivace a synchronizacePythonProxmoxUTB VirtualizaceWP MultidoményOmáčkySamsung OmniaPodstránka 4SalátySociální sítěPDFWindows XPPravdy a nepravdyPomazánkymySQL spojování IISystémové funkceFacebookModulyZvěřinaAdresářové a souborovéČas a časové zónyPříspěvky a stránkyKulturní středySoubory a uploadArchivace a komprimaceDálkové ovládáníUživatel a právaArchivace a zálohováníAplikacePrůjemPodstránka 2WordpressWindows 7PolévkyJavaScriptBindSítězz AplikaceApacheCMS systémyMonitoringWifi routerypláčSilvestr 2008WindowsDálniceMailApache a certifikátyPXEPHP a MYSQLSynchronizace datUpgradeVkládání do PHP stránekSportMailserverTěstoviny a omáčkyObrácený režimAplikace na cestováníRýžovéExporty XLS Word CVSKódováníKlonování dískůNFSWordpress Captcha pluginsWordpress jazykové mutaceLéčebné medicínyCesnetUpgradeLiwQSROBcUteiFjIbWordpress WPDBKočárkyPodstránka 1PizzaPlatební systémyManuályBalíčkovací systémyjmenaMonitoryVypalováníSEOPoleVideoSoftwareVirtualizace a CloudingSubversionThunderbirdVirtualMasterUživatelská polePečeníMySQL a BashDokumentaceTwitterZměnit statusSSHDetoxAjaxFrameworkyMail - výběr poštyLocale - lokalizace linuxuCyklistikaPXE ServerPráce s menu a seznamem stránekChuťovkyKancelářské aplikaceShellRychlovkyDoporučená jídlaNekulturní pátekJSONX11NagiosSylabusDatabázeHardwarewordpress Codestyling LocalizationzzWTwBtKLkrCTHoKafé, ledová káva, frapéCSSServery a bezpečnostTempVIMOpenwiki.orgInstalace na Dell Inspiron DUOMongoDBKVMHovězíBezmaséBuchtyPodstránka 1aSmaženéExport XMLDellGnomePříspěvky v dané kategoriiSdílení mobilního InternetuCSS a Grafické Å¡ablonyVirtual HostingArchivace a verze souborůPřevodyBylinkyZeleninová jídlaVltavaPHPEZCCaptchaPříkladyMySQL export importDoctor Who Toursnetbook Lenovo S205InstalacewgetPřípadová studie 1 - ladění serveruVKzvCYgntSqCbMeKaSynchronizace s Windows MobileDistribucePostgreSQLVirtualizace aplikacíWYSIWYG editory tinyMCEZendZnaková kódováníLVMPayPalVzdálená plochaPropecia Espana Disfuncion Erectil ShanetLékárničkaqYbeiVzqUQXWSwbKohanaLinuxové aplikace pro internetProblémy s hardwaremTémataNápojeRybyOptimalizace www stránekXHTMLAndroidupgrade na PHP 5.5 - nefunkční mysqlDiakritikaVyhledávání souborů a v souborechApache a UTBsweelryaerofs jlrftŠkytavkaKojeníRozvrhyNavigaceWebServer : Performance Benchmarks a WebserverGoogle AnalyticsSdílení tiskárnyPříslušenstvíNHLFirewallDisky a práce s nimiAlkohol a drinkyPHP frameworksŘetězcevrugBUqlmLGALrKonverzní funkceKYPopmWQoMOJwcmIOoKSamsung S5620 MonteZItxHryPkLHorkovzdušná fritéza