分散式版本控制工具 Mercurial 使用
瀏覽倉庫歷史:log
- 每一段描述一個特定的改變集。一個或幾個檔案的改變集合在一起形成一個邏輯單元,稱為改變集。
-
changeset 標識了一個 改變集.
-
tag 是一個標籤,可以理解成為一個改變集指定的名字.
-
user 確定了誰建立了本改變集。這是一個無格式的字串; 它通常包括電子郵件地址,個人姓名等。
-
parent 標誌了改變集的父輩,當你從幾個倉庫合併而來的情況下,父輩有多個。
-
- 大多數情況只有一個父輩,它比目前的改變集舊。這是在我們例子中使用的。
我們可以透過指定-v診斷輸出選項來獲得更多更詳細的歷史資訊, 或者指定--debug選項來獲得歷史資訊中的一切細節:
-
file+ 列出了在此改變集中增加的檔案。
-
file- 列出了在此改變集中刪除的檔案。
-
manifest 給這個改變集一個 Manifest 號。
-
兩個 parent 域給這個改變集的兩個父輩號碼,1:000000000000000000000000
<wbr>0000000000000000 表示沒有父改變集。
提交更集:commit
與別的倉庫分享改變:
和別人分享改變:
當收件人收到我們的郵件,他們將儲存附件並使用 import 命令來把變更集匯入(Import)到他們的倉庫中去。 (在0.7版本中, Mercurial 忽略了其中的一些資訊,做匯入(import)會引起一合併的問題。)
合併改變:merge
合併有衝突的改變:
- 本地檔案(當前倉庫)
- 其它檔案(正在被合併的倉庫)
- 基檔案 (在分支分開前的最後一個版本)
2,配置使用者名稱
UNIX .hgrc in your home directory
WINDOWS %USERPROFILE%Mercurial.ini
[ui]
username = John Doe
3,建立庫[.hg]
hg init
4,克隆庫[.hg]
hg clone my-hello
hg parents
5,新增檔案
hg add *
6,形成一個版本
hg commit -m "adding initial version of hello.txt"
7,差異
hg diff
diff -r 82e55d328c8c hello.c
8,恢復
hg revert hello.c
==>
rm hello.c
mv hello.c.orig hello.c
hg st -> M hello.c
9,歷史檢視[changeset]
所有歷史: hg log
所有詳細歷史檢視: hg log -v
針對版本的檢視: hg log -r1
針對版本的檢視和pathes: hg log -r1 -p
最新的版本: hg log -r tip
10,共享變更
檢視不同的changeset hg -q tip
從新庫帶來變更 hg pull 新庫位置
(run 'hg update' to get a working copy)
$ hg pull ../my-hello-new-output
$ hg push ../my-hello-new-output
If both of these give a 'no changes found', that means the repositories are identical.
從新庫帶來變更 hg pull 新庫位置
(run 'hg heads' to see heads, 'hg merge' to merge)
hg heads
hg glog
hg update
abort: crosses branches (use 'hg merge' or 'hg update -C')
hg merge
merging hello.c
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
hg commit -m "Merged changes from my-hello-new-output"
hg annotate hello.c
use the annotate command to show changeset information per file line
hg resolve -m hello.c
11,把變更共享給他人
hg export tip [export just displays the patch, so usually we redirect the output to a file (or use option -o).]
This file is a patch file in unified diff format, with some extra information that tells Mercurial how to import it.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25556693/viewspace-1049634/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 分散式的版本控制工具分散式
- Mercurial 版本控制入門
- Mercurial 分散式程式碼管理系統 HG分散式
- 一、Git分散式版本控制系統Git分散式
- 分散式版本控制Git 1.8釋出分散式Git
- GIT 分散式版本控制系統的簡單使用介紹Git分散式
- Git 版本控制工具的使用Git
- 痞子衡嵌入式:備受開源社群推崇的分散式版本控制工具(Git)分散式Git
- 集中式版本控制與分散式版本控制——Git 學習筆記01分散式Git筆記
- 使用 Docker 部署版本控制工具 GogsDockerGo
- 版本控制工具
- 談談分散式版本管理工具Git分散式Git
- 版本控制工具(svn)
- 分散式資料(4)分散式與版本化分散式
- pl/sql 版本控制工具SQL
- Java工具面試題:版本控制工具Java面試題
- 史上最淺顯易懂的Git分散式版本控制系統教程Git分散式
- 分散式編譯工具分散式編譯
- 版本控制工具——Git常用操作(下)Git
- 版本控制工具——Git常用操作(上)Git
- 版本控制工具SVN和CVS
- Symtavision — 分散式控制系統時間建模分析和驗證工具分散式
- 【分散式計算】分散式日誌匯入工具-Flume分散式
- 分散式流量控制框架sentinel初探分散式框架
- Git分散式版本控制/團隊開發神器-李強強-專題視訊課程Git分散式
- g4e基礎篇#2 Git分散式版本控制系統的優勢Git分散式
- 版本控制之道-使用CVS
- 沒有使用版本控制的黑暗時代——版本控制心得(一) (轉)
- NMAP分散式掃描工具dnmap分散式
- Hanlp分詞1.7版本在Spark中分散式使用記錄HanLP分詞Spark分散式
- 大型分散式團隊的程式碼版本管理分散式
- Zabbix企業分散式監控工具分散式
- JavaBean分散式應用的事務控制效率?JavaBean分散式
- 用 IIS 搭建 mercurial serverServer
- 使用 GVM 工具管理 Go 版本Go
- 分散式快取NCache使用分散式快取
- 如何使用CVS進行版本控制
- 版本控制