toto je martinův zápis (+honza doplnění, honza ještě neověřil na windows!!!) 16.5.2014 pod mým vedením založil git github projekt kalkulacka
git gui
gitk –all
browser/viewer větvíhonza také lehce provozuje Windows (qůli Lispworks a micro-graphics knihovně je to nutné) a silně doporučuje/používá pro instalaci sw na windows: npackd
print working directory (aktualni pozice v adresari), adresář/cesta/path vůči HOME (nebo ~ vlnovka/tilda) je zpravidla také součástí
change directory
cd ../.. #vyleze o dv adresáře "nahoru", směrem ke kořeni cd #vleze do $HOME, ~ domovského adresáře, zpravidla /C/Users/honza cd . #vlastně neudělá "nic" cd .. #do nadřízeného cd ../.. #do nadřízeného nadřízeného cd podadresar cd pod/adre/sar cd Desktop/PROG2 #vleze do slozky PROG2 #TIP napsat zacatek a Tab to dopise #TIP fungují šipky nahoru/dolů po historii příkazů, staré příkazy lze editovat #POZN vlnka ~ znamena hlavni slozka uzivatele
vypise obsah slozky/adresáře ls(1)
ls ls -l #plný/podrobný výpis
vytvoří adresář mkdir(1)
mkdir novy-adresar mkdir -p nekolik/novych/adresaru/a_podadresaru #POZN: nevkladejde znak mezera do jmen adresaru a souboru (jde to, ale je to zdrojem problemu) #POZN: také nepouzivejte znak '/' (lomítko) a '\' zpětné
rmdir(1)vymaze adresar – musí být prázdný
vypise obsah aktualni slozky du(1) 1/du, resp. velikosti obsahu adresaru, lze “zneužít” v výpisu struktury – to lze i pomocí tree(1)
cp odkud/soubor kam-adresar cp soubor kam-adresar/jine-jmeno cp -r adr adr2 #rekurzivni kopie
wildcard/žolíky/zástupné znaky pro jména souborů/adresářů – expanduje shell/bash
ls -l *.c #soubory končící .c ls -l .* #soubory začínající . tečkou -- normálně je ls nevypisuje ls -l *.[ch] #soubory končíci .c a .h ls -l [0-9]* #soubory začinající číslicí ls -l \*.c #soubor se opravdu jmenuje "*.c"
Oblíbený/proklínaný unix editor http://www.vim.org vi(1)
Jak jsme založili tento projekt
Na http://github.com se založil nový účet (username/heslo) a založil se nový projekt ibassci/kalkulacka (zaškrnout README.md plus .gitignore) tento projekt je vzdálený repozitar
git cheatsheet je vyborná věc!!!
Nyní potřebujeme vytvořit lokální repozitář a pracovní adresář
#projekty (git-repozitare) z github si umístíme do adresářů ~/Desktop/github/<projekt> mkdir ~/Desktop/github cd ~/Desktop/github #naklonujeme repozitar #https://.... je URL pro repo, lze kopírovat do clipboardu na github stránce projektu git clone https://github.com/ibassci/kalkulacka.git #vytvoří se adresář kalkulacka, který obsahuje (prázdný projekt): cd kalkulacka ls -l README.md #README projektu ls -l .gitignore #soubor se vzory ignorovanych souboru du .git #skrytý adresář obsahující lokalní repozitar #zkopirujeme/presuneme do workspace existujici soubory cp ../../PROG2/struktury/kalkulacka.c cp ../../PROG2/struktury/neco.dev #projekt soubor pro Dev C++ IDE cp ../../PROG2/struktury/neco.cbp #projekt soubor pro Code::blocks IDE
Nakonfigurujeme globalně (pro uživatele) git
git config --global user.email tomas.marny@bleble.cz git config --global user.name Tomas Marny
lze nakonfigurovat editor, ktery se pouzije pri zapisu commit message, jinak se použije vim
git config --global core.editor notepad
vypise stav workspace vůči indexu vůči repozitáři…
prida tyto soubory do indexu/stage
index/stage představuje obsah budoucího commitu, changeset
git add kalkulacka.c kalkulacka.dev #pridame 2 nové soubory git status
zapíše obsah indexu jako nový commit, toto nepracuje se serverem!
git commit #vyplnit hlaseni git status gitk --all #nový commit, 'bod' na větvi master, nový 'bod' historie
přenese obsah lokální-repo na vzdálený (github) repo
Teprve zveřejněním na github/vzdáleném repo mohou spolupracovat ostatní
Místo git příkazů na příkazové řádce lze používat: