Differences between revisions 1 and 27 (spanning 26 versions)
Revision 1 as of 2005-08-26 00:57:59
Size: 1957
Editor: waste
Comment:
Revision 27 as of 2009-11-22 16:03:53
Size: 2635
Editor: Tovim
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== ["Tutorial"] - cloning a repository == == Tutoriál - Klonování repozitáře ==
Line 3: Line 3:
We have followed TutorialInstall to install ["Mercurial"] already, right? Good! ''(Toto je druhá část řady 1-9 [[Tutorial]]. Předchozí je[[TutorialInstall]], následuje [[TutorialHistory]])''
Line 5: Line 5:
In ["Mercurial"], we do all of our work inside a ["Repository"]. A ["Repository"] is a directory that contains all of the source files that we want to keep history of, along with complete histories of those source files. Aplikaci Mercurial (nebo TortoiseHg) máme řádně nainstalovánu? Dobrá, popojedeme.
Line 7: Line 7:
The easiest way to get started with ["Mercurial"] is to use a ["Repository"] that already contains some files and some history. V Mercurialu se všechno důležité odehrává uvnitř [[Repository|repozitáře]]. Přísně vzato, repozitář je složka s označením {{{.hg}}}, umístěná spolu s pracovními (a dalšími) soubory uvnitř našeho pracovního adresáře.
Nejjednodušší způsob jak začít s Mercurialem, je použít kopii projektu s již vytvořeným repozitářem.
Line 9: Line 10:
To do this, we use the ''clone'' command. This makes a ["Clone"] of a ["Repository"]; it makes a complete copy of another ["Repository"] so that we will have our own local, private one to work in. Použijeme k tomu příkaz {{{clone}}}.<<FootNote(http://www.selenic.com/mercurial/hg.1.html#clone)>> Ten vytvoří [[Clone|klon]] buď celého pracovního adresáře nebo jenom repozitáře, v závislosti na tvaru příkazu.

Pořiďme si kopii nevelkého projektu, kterou uložíme do samočinně vytvořené složky mojeHalo na aktuálním disku:
Line 12: Line 15:
 $ hg clone http://www.serpentine.com/hg/hello my-hello > hg clone http://www.selenic.com/repo/hello mojeHalo
Line 15: Line 18:
['''Note''': sorry, but this isn't a real URL yet, because ["Mercurial"] doesn't yet allow you to ["Serve"] multiple repositories using a single daemon. I'm working on a fix.]

[Until this fix is in place, one can use
Půjde-li vše dobře, příkaz {{{clone}}} vytiskne toto (Mercurial 1.4):
Line 20: Line 21:
 $ hg clone http://selenic.com/hg my-hg-clone requesting all changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
Line 23: Line 30:
to try things out whith an already working repository. WARNING, this repository is not the smallest thing out there.] Na disku C:\ bychom nyní měli nalézt nový adresář {{{mojeHalo}}}, jehož obsah prozkoumáme otvíráním jednotlivých položek nebo příkazem:
{{{
> dir mojeHalo
}}}
Line 25: Line 35:
If all goes well, the ''clone'' command prints no output. We should now find a directory called ''my-hello'' in our current directory: Uvnitř adresáře {{{mojeHalo}}} nalezneme dva soubory `hello.c`}, `Makefile` a složku `.hg`, která obsahuje historii repozitáře plus různé interní informace -- více viz[[Repository]].

Tyto soubory jsou přesnou kopií souborů z poslední ([[Tip|tip]]) revize původní větve klonovaného repozitáře.<<br>>
Informace o kopírované verzi repozitáře získáme příkazem[[Parent|parents]] :<<FootNote(http://www.selenic.com/mercurial/hg.1.html#parents)>>
Line 28: Line 41:
 $ ls
 my-hello
> cd mojeHalo
> hg parents
changeset: 1:82e55d328c8c
tag: tip
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
summary: Create a makefile
Line 32: Line 50:
Inside the ''my-hello'' directory, we'll find some files: '''Note:''' V okamžiku provedeného klonování jsou oba repozitáře totožné. Později se zřejmě oba repozitáře nezávisle na sobě různě změní. Změny lze z jednoho repozitáře do druhého přenést přikazy
[[Pull|pull]] nebo [[Push|push]] -- viz dále.
Line 34: Line 53:
{{{
 $ ls my-hello
 hello.c Makefile
}}}
Nyní se již můžeme pustit do zkoumání historie našeho nového repozitáře na další stránce -- TutorialHistory.
Line 39: Line 55:
These files are exact copies of the files in the ["Repository"] we just ["Clone"]d.

'''Note''': in ["Mercurial"], each ["Repository"] is self-contained. When you ["Clone"] a ["Repository"], the new ["Repository"] becomes an exact copy of the existing one at the time of the ["Clone"], but subsequent changes in either one /will not show up/ in the other unless you explicitly transfer them.

At this point, we can start examining some of the history of our new ["Repository"], by continuing to TutorialHistory.
----
CategoryTutorial

Tutoriál - Klonování repozitáře

(Toto je druhá část řady 1-9 Tutorial. Předchozí jeTutorialInstall, následuje TutorialHistory)

Aplikaci Mercurial (nebo TortoiseHg) máme řádně nainstalovánu? Dobrá, popojedeme.

V Mercurialu se všechno důležité odehrává uvnitř repozitáře. Přísně vzato, repozitář je složka s označením .hg, umístěná spolu s pracovními (a dalšími) soubory uvnitř našeho pracovního adresáře. Nejjednodušší způsob jak začít s Mercurialem, je použít kopii projektu s již vytvořeným repozitářem.

Použijeme k tomu příkaz clone.1 Ten vytvoří klon buď celého pracovního adresáře nebo jenom repozitáře, v závislosti na tvaru příkazu.

Pořiďme si kopii nevelkého projektu, kterou uložíme do samočinně vytvořené složky mojeHalo na aktuálním disku:

> hg clone http://www.selenic.com/repo/hello mojeHalo

Půjde-li vše dobře, příkaz clone vytiskne toto (Mercurial 1.4):

requesting all changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved

Na disku C:\ bychom nyní měli nalézt nový adresář mojeHalo, jehož obsah prozkoumáme otvíráním jednotlivých položek nebo příkazem:

> dir mojeHalo

Uvnitř adresáře mojeHalo nalezneme dva soubory hello.c}, Makefile a složku .hg, která obsahuje historii repozitáře plus různé interní informace -- více vizRepository.

Tyto soubory jsou přesnou kopií souborů z poslední (tip) revize původní větve klonovaného repozitáře.<<br>> Informace o kopírované verzi repozitáře získáme příkazemparents :2

> cd mojeHalo
> hg parents
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

Note: V okamžiku provedeného klonování jsou oba repozitáře totožné. Později se zřejmě oba repozitáře nezávisle na sobě různě změní. Změny lze z jednoho repozitáře do druhého přenést přikazy pull nebo push -- viz dále.

Nyní se již můžeme pustit do zkoumání historie našeho nového repozitáře na další stránce -- TutorialHistory.


CategoryTutorial

TutorialClone (last edited 2015-10-28 15:22:27 by alishamsulqamar)