我是Mercurial的新手,我開始意識到的是,我的基本工作流可能不是最有效的工作方式,因爲我經常執行提交以及功能改進這麼小,以至於當我需要找到一些先前的步驟來恢復時,這是非常困難的。請在Mercurial中建議一個更好的工作流程
下面是我在Mercurial中設置項目並完成第一次提交後的工作。
- 進行一些更改一個文件,並得到它的狀態下,一個小的改進工作
hg commit -m "improvement A works"
- 進行一些更改相同的文件,並得到它的狀態下,下一次要改進加工。
hg commit -m "improvement B works"
- 檢查是否所有小改進合計一個小功能工作正常。
hg commit -m "feature A works"
如果我發現在「改善」時,我打開歷史(與Netbeans的水銀可視化插件)和複製並粘貼一些代碼回到我的當前版本和一個錯誤從那裏重新開始。
這似乎不是一個好的系統 - 我會很感激任何建議。
las3jrock:謝謝。爲什麼你推薦功能分支而不是功能內的改進? – uzo 2009-09-20 20:12:25
我推薦分支的功能,而不是構成每個功能的個別改進,因爲這使得分支在存儲庫(其包含項目的整個修訂歷史)和個體提交(它們是修訂記錄)。在此工作流程中,相關的提交在分支中組合在一起。在Jon描述的工作流程中,似乎每個分支只包含一個提交,在這種情況下,分支和提交是修訂歷史的同一單元的冗餘表示。 – las3rjock 2009-09-21 01:56:31
不,不,我不打算暗示你會用一個分支進行一次提交 - 這會很荒唐:)。這只是爲了指定一個工作單元 - 一個改進可能是在Web表單或錯誤修復中增加一個新的字段,或者是一個主要的項目本身,您需要確定您希望的粒度去工作...... – Jon 2009-09-21 02:02:21