]> rtime.felk.cvut.cz Git - edu/osp-wiki.git/commitdiff
Remove unnecessary <pre> indentation
authorMichal Sojka <sojkam1@fel.cvut.cz>
Mon, 18 Feb 2013 13:56:29 +0000 (14:56 +0100)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Mon, 18 Feb 2013 13:56:29 +0000 (14:56 +0100)
cviceni/4.mdwn

index da827f9f9537b4add56b2e4802b28ac58cb28a85..191daaa1783c5b0ab3ebd54c3d37dc98d689d204 100644 (file)
@@ -66,15 +66,15 @@ Postup
 1. Základní nastavení. Aby vaše commity obsahovaly správné údaje o
    vás, nastavte si jméno a email:
 
-        git config --global user.name "Your Name Comes Here"
-        git config --global user.email you@yourdomain.example.com
+       git config --global user.name "Your Name Comes Here"
+       git config --global user.email you@yourdomain.example.com
 
 
 
 1. Předpokládáme, že máte zdrojové kódy midnight commanderu někde na
    disku, takže se přesuňte do adresáře s nimi.
    
-        cd ~/mc
+       cd ~/mc
 
 Lokální větve
 -------------
@@ -83,20 +83,20 @@ Lokální větve
    jí do nové větve *cviceni1*. Nejprve se ale podíváme v jakém stavu
    máme zdrojové kódy:
 
-        git status
+       git status
    Dostaneme něco jako:
    
-        # On branch master
-        # Changed but not updated:
-        #   (use "git add <file>..." to update what will be committed)
-        #   (use "git checkout -- <file>..." to discard changes in working directory)
-        #
-        #      modified:   po/az.po
-        #      modified:   po/be-tarask.po
-        #      modified:   po/be.po
-        #       ...
-        #      modified:   src/cmddef.h
-        #      modified:   src/main.c
+       # On branch master
+          # Changed but not updated:
+          #   (use "git add <file>..." to update what will be committed)
+          #   (use "git checkout -- <file>..." to discard changes in working directory)
+          #
+          #    modified:       po/az.po
+          #    modified:       po/be-tarask.po
+          #    modified:       po/be.po
+          #       ...
+          #    modified:       src/cmddef.h
+          #    modified:       src/main.c
    Vidíme, že pracujeme na větvi *master* a vzhledem k verzi uložené v
    repozitáři máme několik změněných souborů.
 
@@ -110,7 +110,7 @@ Lokální větve
    Naštěstí existuje možnost jak gitu říct, že nás změny v některých
    souborech nezajímají: 
    
-        git update-index --assume-unchanged $(git ls-files po m4)
+       git update-index --assume-unchanged $(git ls-files po m4)
 
    Příkaz `git ls-files po m4` vypíše všechny soubory z adresářů *po*
    a *m4*, které jsou spravované gitem a příkazem `git update-index
@@ -129,14 +129,14 @@ Lokální větve
 
 3. Vytvoříme větev *cviceni1* a přepneme se na ni:
 
-        git checkout -b cviceni1
+       git checkout -b cviceni1
 
    Nyní už by měl `git status` ukazovat že pracujeme s větví
    *cviceni1* a vidíme pouze námi modifikované soubory.
 
 4. Nyní provedeme *commit*:
 
-        git commit -a -m 'Zmeny z prvniho cviceni'
+       git commit -a -m 'Zmeny z prvniho cviceni'
        
    Parametrem `-a` říkáme, že "commitujeme" vše (all) a `-m` udává
    komentář ke commitu (message). Kdybychom `-m` vynechali, git spustí
@@ -145,16 +145,16 @@ Lokální větve
    > *Poznámka:* Pokud vám nevyhovuje výchozí editor (většinou `vi`),
    > nastavte si, že chcete používat jiný editor (např. `pico`):
    > 
-   >      git config --global core.editor pico
+   >     git config --global core.editor pico
 
 5. Nyní se přepneme zpět na větev *master*:
 
-        git checkout master
+       git checkout master
    V adresáři se vám teď objeví verze bez vašich úprav z 1. cvičení.
 
 6. Seznam větví v našem repozitáři zjistíme příkazem
 
-        git branch
+       git branch
    Aktuální větev je označena hvězdičkou `*`.
    
 Práce s více vzdálenými repozitáři
@@ -166,7 +166,7 @@ schopnost pracovat s více vzdálenými repozitáři.
 
 1. Které vzdálené repozitáře máme nakonfigurované zjistíme pomocí
    
-        git remote -v
+       git remote -v
 
    Vidíme, že máme nakonfigurovaný repozitář s názvem *origin* a jeho
    URL.
@@ -175,7 +175,7 @@ schopnost pracovat s více vzdálenými repozitáři.
    vyplatí se ho pojmenovat krátkým jménem (v příkladu níže *osp*),
    abychom nemuseli pořád psát dlouhé URL:
    
-        git remote add osp ssh://git@rtime.felk.cvut.cz/osp/mc
+       git remote add osp ssh://git@rtime.felk.cvut.cz/osp/mc
 
    V tomto repozitáři je uloženo zadání dnešní úlohy. Abyste se k němu
    dostali, musí server znát váš veřenjný SSH klíč. Jak toho docílit
@@ -186,43 +186,43 @@ schopnost pracovat s více vzdálenými repozitáři.
        
 2. Nyní můžeme stáhnout obsah právě přidaného repozitáře:
 
-        git fetch osp
+       git fetch osp
    V případě úspěchu bude výstup vypadat následovně:
 
-        remote: Counting objects: 17, done.
-        remote: Compressing objects: 100% (9/9), done.
-        remote: Total 10 (delta 4), reused 7 (delta 1)
-        Unpacking objects: 100% (10/10), done.
-        From ssh://rtime.felk.cvut.cz/osp/mc
-         * [new branch]      master     -> osp/master
-         * [new branch]      only-directories -> osp/only-directories
+       remote: Counting objects: 17, done.
+          remote: Compressing objects: 100% (9/9), done.
+          remote: Total 10 (delta 4), reused 7 (delta 1)
+          Unpacking objects: 100% (10/10), done.
+          From ssh://rtime.felk.cvut.cz/osp/mc
+               * [new branch]          master     -> osp/master
+               * [new branch]          only-directories -> osp/only-directories
 
 3. Příkaz nám vypíše, že v repozitáři byly dvě nové větve. Všechny
    větve ze vzdálených repozitářů vypíšeme příkazem
    
-        git branch -r
+       git branch -r
    Zjednodušeně řečeno, jediný rozdíl mezi lokální a vzdálenou větví
    je v tom, že jméno vzdálené věteve má prefix `<remote>/`.
 
 4. Nyní nás zajímá co je ve větvích, které jsme právě stáhli:
 
-        git log osp/only-directories ^master
-        git log master..osp/only-directories
+       git log osp/only-directories ^master
+          git log master..osp/only-directories
    Tyto dva příkazy jsou ekvivalentní a vypisují commity, které jsou
    ve větvi *osp/only-directories* a zároveň nejsou (^) ve větvi *master*.
    
    Chcete-li vidět i změny v kódu použijte jeden z následujících příkazů:
 
-        git log -p osp/only-directories ^master
-        gitk osp/only-directories ^master
+       git log -p osp/only-directories ^master
+          gitk osp/only-directories ^master
 
 6. Podobně můžeme postupovat i s původním repozitářem. Jméno *origin*
    je výchozí a proto ho nemusíme zadávat:
 
-        git fetch
+       git fetch
    Co přibylo ve větvi *master* od prvního cvičení zjistíme příkazem:
    
-        git log master..origin/master
+       git log master..origin/master
 
 Slučování větví (merge)   
 -----------------------
@@ -245,34 +245,34 @@ obou větvích, dojde k tzv. *konfliktu*, který musí být vyřešen ručně.
 
 1. Zkuste provést sloučení vaší větve *master* s *origin/master*
 
-        git merge origin/master
+       git merge origin/master
    Výsledkem bude *Fast forward* a uvidíme jaké soubory byly změněny:
 
-        git merge origin/master
-        Updating 0ebd30c..a99dc51
-        Fast forward
-         configure.ac                  |    1 +
-         contrib/Makefile.am           |    9 +-
-         ...
+       git merge origin/master
+       Updating 0ebd30c..a99dc51
+       Fast forward
+        configure.ac                  |    1 +
+        contrib/Makefile.am           |    9 +-
+        ...
    Toto je velmi častá operace a proto lze oprace `fetch` a `merge`
    nahradit jedním příkazem
 
-        git pull
+       git pull
 2. Vždy, když člověk pracuje na nějaké netriviální změně, je užitečné,
    založit si na to samostatnou větev. Dnešním úkolem bude sloučit
    větev *osp/only-directories* s větví *master* a protože to není
    triviální založte si na to novou větev:
    
-        git checkout -b homework
+       git checkout -b homework
 3. Pokud provedete sloučení
 
-        git merge osp/only-directories
+       git merge osp/only-directories
    Výsledek bude vypadat pravděpodobně takto:
 
-        Auto-merging doc/man/mc.1.in
-        Auto-merging src/filemanager/find.c
-        CONFLICT (content): Merge conflict in src/filemanager/find.c
-        Automatic merge failed; fix conflicts and then commit the result. 
+       Auto-merging doc/man/mc.1.in
+          Auto-merging src/filemanager/find.c
+          CONFLICT (content): Merge conflict in src/filemanager/find.c
+          Automatic merge failed; fix conflicts and then commit the result. 
 
    Vidíme, že se automaticky povedlo sloučit změny v souboru
    `doc/mc.1.in`, ale při slučování změn ve `src/find.c` už takové
@@ -286,7 +286,7 @@ Konflikt lze řešit několika způsoby (viz také `git merge --help`):
 
 * Vzdáme to a vrátíme se k verzi před slučováním
 
-        git reset --hard
+       git reset --hard
        
 * Konflikt vyřešíme a oznámíme to gitu příkazy `git add` a `git
   commit` (jak nám git napovídá v hláškách)
@@ -341,7 +341,7 @@ si budou moct ostatní vaše změny stáhnout.
    
    1. Pokud žádný klíč nemáte, vytvořte si ho příkazem 
    
-            ssh-keygen
+          ssh-keygen
 
       Příkaz se vás zeptá kam klíč uložit. Výchozí volba vám zpočátku
       bude stačit. Dále se zeptá na heslo (passphrase) k vašemu
@@ -356,7 +356,7 @@ si budou moct ostatní vaše změny stáhnout.
       Vy tak zadáte heslo jen jednou a to když předáváte klíč
       ssh-agentovi příkazem
 
-            ssh-add
+          ssh-add
 
 [reg]:http://repo.or.cz/reguser.cgi
 [roc]:http://repo.or.cz/
@@ -377,11 +377,11 @@ si budou moct ostatní vaše změny stáhnout.
 3. Do vašeho vzdáleného repozitáře můžete nahrát vaší větev některým z
    těchto způsobů
 
-        git push ssh://<mujlogin>@repo.or.cz/srv/git/midnight-commander/osp/<mujfork>.git homework
+       git push ssh://<mujlogin>@repo.or.cz/srv/git/midnight-commander/osp/<mujfork>.git homework
    nebo        
 
-        git remote add repo-or-cz ssh://<mujlogin>@repo.or.cz/srv/git/midnight-commander/osp/<mujfork>.git
-        git push repo-or-cz homework
+       git remote add repo-or-cz ssh://<mujlogin>@repo.or.cz/srv/git/midnight-commander/osp/<mujfork>.git
+       git push repo-or-cz homework
 
 [new]:http://repo.or.cz/regproj.cgi
 [forkmc]:http://repo.or.cz/regproj.cgi?fork=midnight-commander/osp.git