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