2011-02-04 65 views
4

我希望能夠在將其推送到中央存儲庫之前查看其他開發人員代碼。開發商在偏遠的地方,所以去辦公桌不是一個選擇。在推送Mercurial之前,有沒有辦法檢查某人的代碼?

目前他們只是推動,如果有問題,他們會回滾。但這不是一個好方法,因爲有些人可以在他們有機會回滾之前拉動它。

回答

9

Mercurial是分佈式的,因此應該能夠適應任何工作流程。嘗試將某人指定爲integration manager或使用dictator and lieutenants工作流程。

+0

對於目前的項目,我們有穩定和2個開發分支和10個開發人員,可以在3個主要倉庫中的任何一個上工作。使用「集成管理器」或「獨裁者工作流程」 - 每個開發人員對於三個主要存儲庫中的每一個都有自己的中央分支,那麼最終將有33箇中央回購站? – 2011-02-05 09:04:22

-2

也許使用shelve擴展是一個很好的解決方案?我對Mercurial不是很熟悉,但這可能適合你。

https://www.mercurial-scm.org/wiki/ShelveExtension

+0

Shelve只是鼓勵未提交的代碼,沒有工作流需要更多的代碼。 – 2011-02-04 16:02:46

3

如何開發和主存儲庫之間的評審資料庫?只有你從那裏推到主。

1

我提高了kelloti的回答,因爲這僅僅是它的一個擴展,但只是使用了一些存儲庫。讓人們將未經審查的變更集推送到需要審查的中央庫,並讓審查人員將已審閱的作品從那裏推送到需求 - 質量保證中心庫,並讓質量保證人員推送候選版本中央庫。

使用分佈式版本控制系統,您可以像執行多個開發人員存儲庫一樣輕鬆地完成多個集中式回購。

1

在我上一個項目中,我們遵循了一個非常分散的開發模型 - 每個任務都有一個以任務編號命名的分支。代碼評審是針對指定的分支執行的。我們明確地希望將這些推送到中央存儲庫,並由開發人員將其拖拽。

但是,沒有名爲branch的任務被合併到集成分支(在我們的例子中是默認的,但它可能是任何功能分支),直到它通過代碼審查。

許多mercurial開發人員不喜歡使用存儲庫中存在的短期分支,但我發現它可以更容易地跟蹤歷史,特別是在查看單個更改的歷史時 - 您知道特定任務的更改位於關聯的命名分支上。

相關問題