Malý tahák ke Gitu

Transkript

Malý tahák ke Gitu
Malý tahák ke Gitu
Martin Mareš [email protected], 2015-05-15
Volání příkazů:
•
•
•
•
git hglobální přepínačei hpříkaz i hpřepínačei hobjektyi [ -- hcestyi ]
git hpříkaz i --help / git help hpříkaz i / man git-hpříkaz i
git hpříkaz i -h – ukáže stručné shrnutí přepínačů
http://www.git-scm.com/documentation / http://knihy.nic.cz/
Lokální příkazy:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
init – založí .git
config – nezapomeňte nastavit user.name a user.email
status a .gitignore
add hsoubory a adresářei – přidá soubory do indexu
add --patch . . . – vybere jen kousky
commit – commitne aktuální stav indexu
commit -a – commitne všechny změněné soubory
commit hsoubory a adresářei – commitne vyjmenované soubory
rm [-r] [-f] [--cached] hsoubory a adresářei
show [hcommiti][:hcestai] – ukáže obsah konkrétního commitu nebo objektu
log [--patch] [hcommiti | hod i..hdoi] – vypisuje historii
diff – vypíše rozdíl mezi pracovním stromem a indexem
diff --cached [hcommiti] – mezi commitem a indexem
diff hcommiti – mezi commitem a pracovním stromem
diff hod i..hdoi – mezi dvěma commity
gui, gitk, qgit – základní klikátka
Práce s větvemi:
•
•
•
•
•
branch hvětev i [hpočáteční commiti] – založí novou větev
branch [-a] – vypíše známé větve
checkout hvětev i – přepne na určenou větev
checkout hcommiti – „bezhlavýÿ mód
merge [--squash] [-s hstrategiei] hvětev i – sloučí určenou větev do aktivní
Při konfliktu: add a commit / reset --hard HEAD
Hodí se checkout --ours | --theirs / show :1:hsoubor i
• diff hod i...hdoi – oproti společnému předkovi
• tag [-s] [-a] htagi – vyrobí [podepsaný] [anotovaný] tag
1
Více repositářů:
•
•
•
•
•
•
•
•
clone hURLi – naklonuje vzdálený repositář, vytvoří origin/. . .
fetch [hremotei] – stáhne obsah a aktualizuje zrcadlící větve
pull [hremotei] – to je fetch + merge
push [hremotei] [hvětev i] – odešle obsah větve
remote add hremotei hURLi – přidá další vzdálený repositář
branch hmístní větev i hremotei/hvzdálená větev i – zapamatuje si vazbu
push --set-upstream hremotei hvětev i – totéž, pokud větev vznikla lokálně
init --bare – tak obvykle vzniká sdílený repositář
Jména verzí:
•
•
•
•
•
•
•
•
href i = HEAD / @ / hjméno větvei / hjméno tagui → commit na špici
h40-znakový hashi nebo jeho jednoznačný prefix
hrev i^ / hrev i^2 . . . – otec, druhý otec . . .
hrev i~3 – zkratka za hrev i^^^
[href i]@{13} – stav před 13 změnami reference (via lokální reflog)
[href i]@{yesterday} – stav v daném okamžiku (via lokální reflog)
[href i]@{upstream} – příslušná vzdálená větev
@{-5} – před 5 přepnutími aktuální větve
První pomoc, když se něco pokazí:
•
•
•
•
Pokud není commitnuto: checkout / reset / rm --cached
Commitnuto, ale nepushnuto: reset --hard (HEAD^ | hcommiti)
Už jsme pushnuli: revert hcommiti / v nouzi nejvyšší push --force
Po nepovedeném resetu: reflog / reset --hard @{1}
Údržba:
• gc [--aggresive] – garbage collection
• clean – mažeme soubory, které nejsou v repositáři
• fsck [--unreachable] – nestraší tu? [existují nedosažitelné commity?]
Další triky:
•
•
•
•
•
•
Archeologie: grep / bisect / blame / diff -S hstringi
Odkládání změn: stash save / stash apply
Vyzobávání změn: cherry-pick / cherry / rebase
Práce s patchi a maily: format-patch / apply / send-email / am
Export: archive
Přepisování historie: filter-branch
2

Podobné dokumenty

roUIÁNÍ KotEM onucE

roUIÁNÍ KotEM onucE po žluté (u zastávky jsme se napojiIi i na červenou),přejdeme most přes Tichou or|ici a na siIníci uprostřed obce (asi po 100 metrech od mostu) přejdeme do|eva na v|astní z n a č e n íM . í r n ý m...

Více

české PDF

české PDF  O INCOMPLETE: stáhla se část a pak spojení spadlo.  O OK: stáhl se celý soubor. Přesnější popis chyby je možno získat z object request->stat.state. To je některá z konstant S xxx, která určuje ...

Více

Y36SI3 Zadání Disciplinované přístupy ke změnám

Y36SI3 Zadání Disciplinované přístupy ke změnám Jednotlivé soubory obvykle existují ve více repository současně, a tak při úpravách stejného souboru více vývojáři vznikají tzv. větve (branches). Z obrázku vidíme, že Sue a Joe upravují stejný so...

Více