## 教程 - 克隆倉庫
我們已經按照 [ChineseTutorialInstall](/wiki/ChineseTutorialInstall) 安裝了 [Mercurial](/wiki/Mercurial),對嗎?很好!
[Mercurial](/wiki/Mercurial) 中,我們在 [倉庫](/wiki/Repository) 里做我們所有的工作。[倉庫](/wiki/Repository)是一個目錄,它包含所有我們希望保留歷史的源代碼和這些源代碼的歷史記錄。
最簡單開始 [Mercurial](/wiki/Mercurial) 的方法是使用一個已經包含文件和一些歷史記錄的[倉庫](/wiki/Repository)。
我們使用 `clone` 命令來做這個事情。 這生產一個[倉庫](/wiki/Repository)的[克隆](/wiki/Clone),它生成一個完整的[倉庫](/wiki/Repository)復本,這樣我們有一個本地私有的[倉庫](/wiki/Repository)來工作。
讓我們克隆一個在 selenic.com 上的 "hello, world" 倉庫:
```
$ hg clone http://www.selenic.com/repo/hello my-hello
```
如果所有都沒問題,`clone` 命令輸出:
```
requesting all changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
```
我們應該在當前目錄下發現一個目錄叫 `my-hello`:
```
$ ls
my-hello
```
在 `my-hello` 目錄中,我們應該發現這些文件:
```
$ ls my-hello
Makefile hello.c
```
這些文件是我們剛[克隆](/wiki/Clone)的[倉庫](/wiki/Repository)的精確復本。
**注:** 在 [Mercurial](/wiki/Mercurial) 中, 每一個[倉庫](/wiki/Repository)是自包含的。當你[克隆](/wiki/Clone)一個[倉庫](/wiki/Repository)后,新[倉庫](/wiki/Repository)變成[克隆](/wiki/Clone)時它的精確復本, 但是后續的兩個倉庫當中任一方改變都不會在對方顯示,除非你用 [Pull](/wiki/Pull) 或 [Push](/wiki/Push) 明確地傳遞改變。
現在我們可以檢查新[倉庫](/wiki/Repository)的一些歷史記錄, 繼續 [教程 - 檢查倉庫歷史](/wiki/ChineseTutorialHistory)。