Mercurial 入門

另請參閱 Mercurial 教程

建立 Mercurial 儲存庫

Mercurial 儲存庫只是一個目錄(稱為工作目錄),其中包含 .hg 目錄,其中包含有關儲存庫內容的後設資料。這使得 Mercurial 非常輕巧,易於使用。要建立新儲存庫,只需執行:

$ hg init project

其中 project 是你要建立的目錄的名稱。這將建立一個 project 目錄以及一個包含儲存庫本身的 project/.hg 目錄。

   $ cd project
   $ echo Hello World > hello.txt
   $ hg stat
   ? hello.txt

我們剛剛在儲存庫中建立了一個 hello.txt 檔案並執行了 hg status (或簡稱 stat)來檢視我們儲存庫的當前狀態。如你所見,hello.txt? 註釋,意味著 Mercurial 還沒有意識到它。該 add 命令暫存器與水銀這個新的檔案,所以它會被納入下一次提交。

$ hg add hello.txt

既然 Mercurial 知道一個已更改的檔案,你可以執行 diff 來檢視自上次提交以來發生的變化 - 在這種情況下,我們將新增 hello.txt 的全部內容:

$ hg diff
diff -r 000000000000 hello.txt
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/hello.txt Sat Jul 23 01:38:44 2016 -0400
@@ -0,0 +1,1 @@
+Hello

一旦我們對他們滿意並準備好檢查我們的更改,我們就可以執行 commit

$ hg commit -m "Created a hello world file."

請注意,我們在 -m 中包含了一條提交訊息 - 如果你未指定 -m,Mercurial 將啟動文字編輯器,你可以輸入提交訊息。如果你想提供更長的多行訊息,這將非常有用。

一旦你提交了更改,如果你執行 hg stat,它們將不再顯示,因為儲存庫現在與工作目錄的內容同步。你可以執行 log 來檢視提交列表,-v 包含其他詳細資訊,例如每個提交的檔案:

$ hg log -v
changeset:   0:b4c06cc77a42
tag:         tip
user:        Michael Diamond@Aodh <dimo414@gmail.com>
date:        Sat Jul 23 01:44:23 2016 -0400
files:       hello.txt
description:
Created a hello world file.