Instalace a nastavení Git - Ubuntu/Debian
Git je distribuovaný systém řížení verzí. Program umožňuje nelineární vývoj projektů a efektivně zpracovává velké množství dat uložením na lokálním serveru.
Instalace Git
Pomocí apt-get je instalace rychlá a snadná.
sudo apt-get install git-core
Poté co se instalace dokončí, máte Git nainstalovaný a připravený k použití.
Nastavení Git
Než začneme Git používat potřebujeme zadat jméno a e-mail
Můžeme použít následující příkazy.
git config --global user.name "novyUzivatel"
git config --global user.mail novyUzivatel@domena.cz
Veškeré nastavení můžeme nalézt na:
git config --list
Automatické nasazení s Git
Naše situace:
Složka se serverem: /var/www/mojedomena.cz
Repositář serveru: /var/git-repo/site.git
Vytvoření repositáře
Přihlásíme se na naše VPS a napíšeme následující:
cd /var
mkdir git-repo && cd git-repo
mkdir site.git && cd site.git
git init --bare
--bare znamená že naše složka nebude mít žádné zdrojové soubory, pouze ovládání verzí
Události
Git repositář má složku zvanou "hooks" (události). Tato složka obsahuje jednoduché soubory pro případné akce, které reagují na dané události, a provádějí vlastní akce, které uživatel nastavil.
Dokumentace Gitu definuje 3 události: "pre-recieve", "post-recieve" a "update"
Pre-recieve je proveden hned jen co server obdrží příkaz "push".
Update je podobný ale je proveden pro každý "branch" zvlášť.
Post-receive je proveden když je "push" hotov a taky je to ten o který máme zájem.
V našem repositáři pokud napíšeme:
ls
Uvidíme několik souborů a složek, včetně složky "hooks".
Přesuneme se do složky "hooks" a vytvoříme soubor "post-recieve".
cd hooks && touch post-recieve
Tímto vytvoříte prázdný soubor. Soubor si otevřeme v textovém editoru a přidáme text.
nano post-recieve
#!/bin/sh
git --work-tree=/var/www/mojedomena.cz --git-dir=/var/git-repo/site.git checkout -f
Soubor uložíme a zavřeme.
Pro spuštení našeho souboru potřebujeme nastavit oprávnění.
chmod +x post-recieve
Lokální zařížení
Na lokálním zařízení vytvoříme repositář.
Cestu a jméno repositáře si zvolte jakýkoliv chcete.
cd /development/myProjects
mkdir git-test && cd git-test
git init
Následně musíme nastavit vzdálenou cestu k našemu repositáři. Vzdálenou cestu si nazveme jako "projekt".
git remote add projekt ssh://mojedomena.cz@mojedomena.cz/var/git-repo/site.git
Pokud už máme projekt rozpracovaný, můžeme nechat nahrát soubory.
git add .
git commit -m "Nahraváme soubory"
Pamatovat, . (tečka) za "git add" znamená že přidáváme všechny soubory.
Za "git commit" máme parametr -m pro zprávu.
Pro nahrání na server použijeme náš alias "projekt".
git push live master
Hotovo.