對于習(xí)慣于SVN的集中式代碼管來說,Windows下的TortoiseHg需要一些規(guī)范來避免代碼合并錯(cuò)誤及丟失,下面我具體說下TortoiseHg操作中的一些注意要點(diǎn).
這里使用的TortoiseHg版本是2.0.4,對應(yīng)的Mercurial版本是1.8.3,操作環(huán)境為局域網(wǎng)
1. 克隆代碼
局域網(wǎng)獲取代碼時(shí),代碼源(Source)的格式是 http://ip-address:8000
而代碼源的機(jī)器需要打開WorkBench->Repository->Web Server...
默認(rèn)情況下,不打開Web Server,別人是無法獲取你電腦上的代碼庫的.
2. 代碼changeset的辨別
默認(rèn)的,Graph里左邊一支是自己的版本,右邊的一支代表其他人提交過來的changeset. 帶圈的代表工作目錄基于的版本修改
3. 同步代碼
默認(rèn)情況下,Push是被禁用的,這也能避免別的不必要的版本被推送到自己的代碼庫.
需要同步代碼時(shí)點(diǎn)擊面板的Synchronize,彈出Remote Repository.
在文本框里可以輸入http://ip-address:8000之類的地址,點(diǎn)擊右邊的軟盤圖標(biāo)可以保存該地址以便下次再同步
點(diǎn)擊Preview可以預(yù)覽對方代碼庫的修改,Accept后被獲取到本地
4. 獲取別人代碼,合并本地正在修改的代碼
出現(xiàn)以上提示時(shí),選擇Merge來合并本地修改.
不過使用TortoiseHg時(shí), 不建議使用這種方式,比較好的方法應(yīng)該是在合并前提交自己代碼進(jìn)庫,參考下面一條.
5. 獲取別人代碼, 合并已經(jīng)提交的本地代碼,本地沒有掛起修改的代碼
使用這種方法時(shí), Pull過代碼后,不Update,而是直接Merge with Local
碰到有沖突時(shí),需要解決沖突
請使用Tool Resolve, TortoiseHg會(huì)使用你從設(shè)定中選擇的合并工具來進(jìn)行代碼合并,其他功能很類似于SVN. 如果合并不爽,也可以重新進(jìn)行合并
6. 重新恢復(fù)沖突解決
如果由于誤操作關(guān)閉合并對話框,或者是需要提交本地代碼而關(guān)閉對話框, 可以在Repository->Resolve…重新打開對話框
以上為本人的一些心得,歡迎板磚伺候
轉(zhuǎn)載請注明 戰(zhàn)魂小筑 及本文地址