Git: Porovnání verzí

Z GeoWikiCZ
Řádek 11: Řádek 11:


== Příklady ==
== Příklady ==
=== Instalace ===
apt-get install git-core
Další doplňující balíčky jsou <tt>git-cvs</tt>, <tt>git-daemon-run</tt>, <tt>git-gui</tt>, <tt>gitk</tt> a <tt>gitweb</tt>.


=== Vytvoření repozitáře ===
=== Vytvoření repozitáře ===

Verze z 5. 2. 2010, 11:08

When I say I hate CVS with a passion, I have to also say that if there any SVN users (Subversion users) in the audience, you might want to leave. Because my hatred of CVS has meant that I see Subversion as being the most pointless project ever started, because the whole slogan for the Subversion for a while was 'CVS done right' or something like that.
--- Linus Torvalds

Git je distribuovaný systém pro správu verzí (software pro správu zdrojových kódů projektů). Git byl původně vytvořen Linusem Torvaldsem pro vývoj jádra Linux, dnes je spravován Junion Hamanem. Git je svobodný softare šířený pod GPL licencí verze 2.

Odkazy

Příklady

Instalace

apt-get install git-core

Další doplňující balíčky jsou git-cvs, git-daemon-run, git-gui, gitk a gitweb.

Vytvoření repozitáře

Nový prázdný git repozitář vytvoří příkaz

git-init-db

Git repozitář můžeme vytvořit pro existující projekt, například

cd /cesta/k/mému/projektu
git-init-db     (1)
git-add .       (2)

kde (1) vytvoří /cesta/k/mému/projektu/.git adresář a (2) přidá do projektu všechny existující soubory z běžného adresáře (symbol tečka).

Git může být takto používán i pro lokální projekty na kterých pracuje jediný uživatel.

Převod CVS repozitáře na git

Přihlásíme se pomocí ssh na server s CVS repozitářem a pomocí příkazu git import vytvoříme git kopii. Tato operace může chvíli trvat, protože jsou převáděny všechny verze souborů uložené na CVS.

ssh gin@josef.fsv.cvut.cz
git cvsimport -v -d /home2/gin/cvsroot -C git gin

Na svém počítači vyrvoříme klon nového git repozitáře.

git clone gin@josef.fsv.cvut.cz:/home2/gin/git

V adresáři git (jméno adresáře použité v naší ukázce) změníme jeden soubor, zobrazíme diff a uložíme změny v lokální kopii.

cd git
edit README
git diff
git commit -a

Pro uložení změn v hlavnímrepozitáři musíme použít příkaz git push

Příklad

git cvsimport -v -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/sqltutor \
              -C sqltutor sqltutor