2011-11-29 57 views
0

我有一個關於Maven Release插件的問題。根據插件文檔,發佈之後所遵循的步驟之一是:準備目標是:發佈:準備足夠的目標步驟嗎?

  • 檢查源中是否沒有未提交的更改。

我明白這一點的重要性。讓我們以許多開發人員開發的多模塊項目爲例。每個開發人員都已完成其工作,並且該項目已準備好發佈。但是,一臺機器上只有一個人可以發佈,我認爲檢查執行發佈人的工作副本中是否存在未提交的更改是不夠的。

也許在其他開發人員的工作副本中有未提交的更改,這些副本也適用於該項目?我缺少的東西(我的意思是,這真的是一個問題嗎?如果是的話,有沒有辦法做這些驗證與Maven或其他開發人員的工作副本必須手工檢查?)

感謝

+0

你不應該在開發者機器上這麼做......我會爲此目的使用一個構建服務器,並且這應該總是進行全新的檢出(或者在Subversion的情況下至少還原一次)。 – mliebelt

回答

1

它檢查源中未提交更改的原因是,釋放的二進制文件與存儲庫中的源代碼相對應。

如果在發佈版本的計算機上發生未提交的更改,則二進制文件不會與源對應。

如果其他開發人員有未提交的更改,那並不重要,因爲他們的更改不會在二進制文件中結束。

+0

好的,但這些更改可能是發佈的一部分。我的意思是,如果一位開發人員已經開發了特定於此版本的功能,則不會考慮其更改,並且這是一個錯誤的版本,因爲它不包含此功能。所以,我不明白爲什麼沒關係? –

+0

是的,但你可以通過檢查源代碼來弄清楚。就像我說的那樣,檢查的原因是確保二進制文件與存儲庫源相匹配,僅此而已。 – artbristol

+0

好的,但我的問題是,是否有自動的方式來做這些驗證?我的意思是檢查其他開發人員的工作副本是否完全承諾。 –