
Mercurial(輕量級分布式版本控制系統(tǒng))
詳情介紹
Mercurial電腦版是一款非常優(yōu)秀的分布式版本控制系統(tǒng)(DCVS),Mercurial英文意為水銀,所以常被縮寫為Hg。采用Python語言實(shí)現(xiàn),具有高效率、跨平臺、可擴(kuò)展、使用簡便且開源等優(yōu)點(diǎn),是目前最為流行的版本控制工具之一。Mercurial電腦版是基于 GNU General Public License (GPL) 授權(quán)的開源項目。采用了分布式的模型,具有擴(kuò)展性強(qiáng),易學(xué)易用的優(yōu)點(diǎn)。同時Mercurial電腦版有著友好的界面,操作非常簡單,設(shè)計的非常人性化。但是。Mercurial 沒有命名空間,一但和很多個版本庫交流,很容易導(dǎo)致自己與別人的代碼混成一團(tuán),就這個意義而言,Mercurial 根本不是個合格的分散式系統(tǒng)。有需要的用戶可以下載體驗(yàn)!
傳統(tǒng)的版本控制系統(tǒng)使用集中式的 repository,一些和 repository相關(guān)的管理就只能由管理員一個人進(jìn)行。由于采用了分布式的模型,Mercurial 中就沒有這樣的困擾,每個用戶管理自己的 repository,管理員只需協(xié)調(diào)同步這些repository。
2、更健壯的系統(tǒng)
分布式系統(tǒng)比集中式的單服務(wù)器系統(tǒng)更健壯,單服務(wù)器系統(tǒng)一旦服務(wù)器出現(xiàn)問題整個系統(tǒng)就不能運(yùn)行了,分布式系統(tǒng)通常不會因?yàn)橐粌蓚€節(jié)點(diǎn)而受到影響。
3、對網(wǎng)絡(luò)的依賴性更低
由于同步可以放在任意時刻進(jìn)行,Mercurial 甚至可以離線進(jìn)行管理,只需在有網(wǎng)絡(luò)連接時同步。
1、查看項目狀態(tài)
hg st
2、將未加入索引的文件加入索引
hg add 文件
或者 hg add . 將所有的加入索引中
3、提交修改
hg ci -m "提交說明"
4、初次推送代碼
hg push --new-branch
5、非初次推送代碼
hg push -b 分支號
二、分支管理
1、新建分支
hg branch 分支號
2、查看當(dāng)前分支
hg branch
3、查看所有分支
hg branches
4、切換分支
hg update 新分支號
5、合并分支
hg merge 分支號
或者 hg merge,即是不加分支號,此時合并自己分支的多個head頭,多用于多人操作同一分支后,進(jìn)行合并操作
三、更新操作
1、更新當(dāng)前項目狀態(tài)
hg update
2、更新代碼
hg pull
四、回退操作
1、代碼未提交時(即沒有進(jìn)行 hg ci -m “提交" 操作),還原代碼
hg revert 文件名
或者 hg revert -a 還原所有修改
2、代碼提交了一次,還原提交,此時修改的代碼還在,特別注意,此操作只能還原一次,多次是不行的
hg rollback
在使用 Mercurial 的系統(tǒng)中每個改動隔離在各自的 repository 里,既避免把不相關(guān)的代碼混雜起來, 又便于一個接一個的測試每一部分工作,用戶做的每個改動稱為一個 revision。一般會有一個所有用戶都可以訪問得到的 repository 保存了項目的“主要”版本,工作repository 是用戶自己做事情的地方,實(shí)現(xiàn)新的特性,修改漏洞,重構(gòu),實(shí)驗(yàn)等,當(dāng)完成改變后,你可以 push 到共用的 repositor y中,即完成了一個 revision。
2、Changeset
一個或多個文件的改變集合在一起形成一個邏輯單元,稱為 changeset。每一個 changeset由兩部分內(nèi)容描述,版本號和 changeset 標(biāo)識,例如:changeset: 207:58e4906e69e3
冒號前面的數(shù)字代表版本號,它用來標(biāo)識本地 changeset。這個版本號只有在用戶的本地repository 中才有意義。冒號后面的那個很長的十六進(jìn)制串是 changeset標(biāo)識, 它是確定changeset的全局唯一標(biāo)識符, 在所有包含這個 changese 的 repository 中都相同。多個用戶之間討論changeset,一般使用這個 changeset 標(biāo)識,而不是上面說的版本號,因?yàn)橥耆锌赡苊總€用戶的 repository 中同樣的 changeset 版本號不同。
3、Head
Head 表示 repository 中每個分支最新的 revision,通常在合并幾個分支時會用到這個概念。
4、Tip
Tip 是最新的一個 changeset 的版本號的一個別名。在命令中任何使用版本號的地方都可以使用 tip 來代替最新的 changeset的版本號。Tip在各個repository中是不同的,同時一個repository 中只有一個 tip。
5、Log
Log 命令按時間順序從近到遠(yuǎn)的記錄著在 repository 中發(fā)生的每一次事件??梢酝ㄟ^指定-v診斷輸出選項來獲得更多更詳細(xì)的歷史信息,或者指定—debug選項來獲得歷史信息中的一切細(xì)節(jié)。

Mercurial(輕量級分布式版本控制系統(tǒng))特色
1、更輕松的管理傳統(tǒng)的版本控制系統(tǒng)使用集中式的 repository,一些和 repository相關(guān)的管理就只能由管理員一個人進(jìn)行。由于采用了分布式的模型,Mercurial 中就沒有這樣的困擾,每個用戶管理自己的 repository,管理員只需協(xié)調(diào)同步這些repository。
2、更健壯的系統(tǒng)
分布式系統(tǒng)比集中式的單服務(wù)器系統(tǒng)更健壯,單服務(wù)器系統(tǒng)一旦服務(wù)器出現(xiàn)問題整個系統(tǒng)就不能運(yùn)行了,分布式系統(tǒng)通常不會因?yàn)橐粌蓚€節(jié)點(diǎn)而受到影響。
3、對網(wǎng)絡(luò)的依賴性更低
由于同步可以放在任意時刻進(jìn)行,Mercurial 甚至可以離線進(jìn)行管理,只需在有網(wǎng)絡(luò)連接時同步。
常用命令
一、正常流程1、查看項目狀態(tài)
hg st
2、將未加入索引的文件加入索引
hg add 文件
或者 hg add . 將所有的加入索引中
3、提交修改
hg ci -m "提交說明"
4、初次推送代碼
hg push --new-branch
5、非初次推送代碼
hg push -b 分支號
二、分支管理
1、新建分支
hg branch 分支號
2、查看當(dāng)前分支
hg branch
3、查看所有分支
hg branches
4、切換分支
hg update 新分支號
5、合并分支
hg merge 分支號
或者 hg merge,即是不加分支號,此時合并自己分支的多個head頭,多用于多人操作同一分支后,進(jìn)行合并操作
三、更新操作
1、更新當(dāng)前項目狀態(tài)
hg update
2、更新代碼
hg pull
四、回退操作
1、代碼未提交時(即沒有進(jìn)行 hg ci -m “提交" 操作),還原代碼
hg revert 文件名
或者 hg revert -a 還原所有修改
2、代碼提交了一次,還原提交,此時修改的代碼還在,特別注意,此操作只能還原一次,多次是不行的
hg rollback
元素介紹
1、Revision在使用 Mercurial 的系統(tǒng)中每個改動隔離在各自的 repository 里,既避免把不相關(guān)的代碼混雜起來, 又便于一個接一個的測試每一部分工作,用戶做的每個改動稱為一個 revision。一般會有一個所有用戶都可以訪問得到的 repository 保存了項目的“主要”版本,工作repository 是用戶自己做事情的地方,實(shí)現(xiàn)新的特性,修改漏洞,重構(gòu),實(shí)驗(yàn)等,當(dāng)完成改變后,你可以 push 到共用的 repositor y中,即完成了一個 revision。
2、Changeset
一個或多個文件的改變集合在一起形成一個邏輯單元,稱為 changeset。每一個 changeset由兩部分內(nèi)容描述,版本號和 changeset 標(biāo)識,例如:changeset: 207:58e4906e69e3
冒號前面的數(shù)字代表版本號,它用來標(biāo)識本地 changeset。這個版本號只有在用戶的本地repository 中才有意義。冒號后面的那個很長的十六進(jìn)制串是 changeset標(biāo)識, 它是確定changeset的全局唯一標(biāo)識符, 在所有包含這個 changese 的 repository 中都相同。多個用戶之間討論changeset,一般使用這個 changeset 標(biāo)識,而不是上面說的版本號,因?yàn)橥耆锌赡苊總€用戶的 repository 中同樣的 changeset 版本號不同。
3、Head
Head 表示 repository 中每個分支最新的 revision,通常在合并幾個分支時會用到這個概念。
4、Tip
Tip 是最新的一個 changeset 的版本號的一個別名。在命令中任何使用版本號的地方都可以使用 tip 來代替最新的 changeset的版本號。Tip在各個repository中是不同的,同時一個repository 中只有一個 tip。
5、Log
Log 命令按時間順序從近到遠(yuǎn)的記錄著在 repository 中發(fā)生的每一次事件??梢酝ㄟ^指定-v診斷輸出選項來獲得更多更詳細(xì)的歷史信息,或者指定—debug選項來獲得歷史信息中的一切細(xì)節(jié)。
下載地址
- 電腦版
Mercurial(輕量級分布式版本控制系統(tǒng)) v6.6官方版
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
同類軟件
網(wǎng)友評論
共0條評論(您的評論需要經(jīng)過審核才能顯示)