我在使用maven發行版插件時遇到了git標籤的問題。在mvn release:perform
我們已經關閉了自動推到git的,下面做是爲了建立一個新的版本:git中丟失的標籤
- 拉從遠程混帳回購協議的最新變化。
mvn release:prepare
mvn release:perform
git push origin master
git push --tags
這個場景的作品,提交的標籤,一切都很好。但是,在這種情況下,標籤丟失:
- 從遠程git倉庫中取出最新的更改。
mvn release:prepare
- 有人推動主人的承諾!
mvn release:perform
git push origin master
- 不工作,因爲新的承諾是,這樣git pull --rebase origin master
git push origin master
git push --tags
的Git指出,新的標籤已經被推,但它們不適用於我以外的其他任何人(製作版本),使用gitk
時也不可見,因此在所有實際應用中,t他的標籤丟失了。
這是git中的錯誤,還是它是一個使用錯誤(我們的責任是確保在構建時沒有提交)?
有沒有什麼辦法可以避免這種情況發生:一旦有人在發佈階段推送了一個提交到主服務器?或者正在向所有人發送電子郵件,警告他們不要推動任何事情來做到這一點? – Tobb 2013-03-11 14:13:34
根據我編輯的答案,我建議不要使用主分支來標記發佈,至少如果有幾個人可以推送它。我不使用Maven,所以不能真正說出如何在當前的計劃中解決此問題。您可以在本地刪除標籤,並在重新綁定後重新運行Maven命令? – Ben 2013-03-11 14:27:35