簡體   English   中英

如何實現此Mercurial + BitBucket工作流程?

[英]How can I implement this Mercurial+BitBucket workflow?

我是DVCS的新手,請多多包涵...

我是一個軟件庫的作者,當前作為BitBucket上的私有存儲庫托管。 我想將我的庫的源代碼公開發布,但是要進行以下設置:

  • 我想在BitBucket上維護兩個存儲庫,一個私有存儲庫,一個公共存儲庫。
  • 我希望公共存儲庫的初始內容是私有存儲庫的當前內容, 沒有任何歷史記錄
  • 我想繼續對私有存儲庫發表意見,而不碰公共存儲庫。 然后,不時地,我想對私有存儲庫進行一堆提交,並將它們作為單個變更集使用自己的提交消息推送到公共存儲庫。

我怎樣才能做到這一點? 如果有幫助,我的私人倉庫只有一個分支(主要分支)。

這很容易做到。 我將創建一個“發布”分支,並在要推送到公共倉庫時合並到該分支中。 然后,使用convert擴展名僅提取這一分支。

但是,像這樣工作幾乎不是一個好主意。 潛在的貢獻者通常不願忍受秘密發展。 對於開源工作,通常最好打開所有內容–錯誤跟蹤器,源回購,Wiki,郵件列表,評論等。

串聯變更集

好了,可以使用這些技術之一或使用--collapse 擴展 --collapse來實現級聯變更集。

分支機構

要執行您想要的操作,您必須有一個包含詳細提交的development分支和一個具有串聯提交的publish分支。 只要publish分支沒有開發分支中的任何節點作為祖先,您就可以只推送publish分支。 這意味着您必須使用上述選項之一,不能將開發分支合並到發布分支,因為這會將開發分支節點設置為公共分支的祖先,並且您必須推送這些節點。

爭議

盡管這是可行的,但我同意@Ringding,但它不應成為常規工作流程。 不這樣做有兩個很好的理由:

  1. 您為工作流程增加了不必要的復雜性,事情應該更簡單。
  2. 這些開發變更集是導致最終版本的不斷發展的步驟,它們是歷史的一部分,就像撒謊一樣隱藏。 這就是為什么歷史記錄編輯工具是擴展而不是核心命令的原因,它們不應成為常規工作流程的一部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM