2012-07-27 44 views
5

我是新來的顛覆。在過去的一個月中,我做了一些改變,並將它們合併爲主幹。一切似乎都很好 - 我的改變像預期的那樣得到了傳播。但今天我重新閱讀有關合並,看到this,稱合併更改時回主幹如下:不使用 - 使用svn重新合併回中繼的後果

現在,使用SVN與--reintegrate選項複製分支的修改到主幹合併。

,後來幾段:

通知我們使用--reintegrate選擇的這一次。該選項對於將分支的更改重新集成到原始開發線中至關重要 - 不要忘記它!

我猜我第一次沒有仔細閱讀過。

因此,我似乎犯了一個錯誤,因爲我之前沒有使用--reintegrate選項,因此我之前合併回主幹。這有什麼後果?有什麼我需要解決?

在情況下,它是非常有用的,我的工作流程已經是這樣的:

  1. 從主幹拷貝,創建一個個人分支。
  2. 查看個人分支。
  3. 更改和提交。
  4. 獲取主幹的工作副本。
  5. 將我的分支合併到trunk的工作副本(再次沒有--reintegrate)。
  6. 提交合並。
  7. 刪除我的分支。
+0

[SVN合併一系列修訂與重新合併]的可能重複(http://stackoverflow.com/questions/6575325/svn-merge-a-range-of-revisions-vs-reintegrate) – parvus 2014-03-26 13:12:57

回答

9

如果您的分支非常短暫,您的工作流程很好。

如果壽命更長,您需要定期將變化從樹幹合併到您的分支中,以避免與主要活動分支斷開連接。

最後,您的功能分支將包含自從您創建分支以來在分支中發生的每個更改,+您在分支中開發的新功能。此時,您需要使用reintegrate選項,因爲將分支的更改應用到主幹是錯誤的:它將重新應用已存在主幹中的更改,因爲它們源自它。

這在SVN書關於feature branches的章節中有很好的介紹。