Size: 1957
Comment:
|
Size: 2635
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.