2008-09-26 98 views
16

據我所知,Microsoft在對其產品進行版本控制時使用此模板:Major.Minor.Build.Revision。你如何版本你的項目?

當「開發人員」想要顯示軟件發生重大變化並且無法假定向後兼容性時,主要改變。也許重寫代碼已經完成了。

小數字表示向後兼容的意圖的顯着增強。

內部編號是一個小小的改變,例如重新編譯同一個源代碼。

修訂版用於修復安全漏洞,並應完全互換。 Build和Revision都是可選的。這些信息基於MSDN Version Class

你如何版本你的項目,你爲什麼要這樣的版本?

回答

7

我們通常在major.minor [.maintenance [.build]]上工作,但每個項目似乎有所不同。

大/小跟你提到的一樣。對於小的(錯誤)修復,維護會增加,並且每次構建服務器運行時都會進行構建。

1

我使用major.minor.point.revision,其中point是一個bugfix-only版本,revision是版本庫修訂版。這很容易,效果很好。

1

我只是做MAJOR.MINOR。由於我是一名開發人員(偶爾會提供幫助)在網絡應用程序上工作,因此大多數人都不會在乎我所做的小修復。所以當我做出更改/升級時,我只是重複了小版本,因爲我使用了新功能和主要版本號。否則,就版本號而言,我只是忽略了小修正(儘管如果我需要爲我自己回溯,我確實有Subversion修訂號)。

1

我在很多小型項目上工作,我個人發現這很有用。

PatchNumber.DateMonthYear

這是一個小的基於Web的工具,其中用戶可以看到當最後一次更新的時間和頻率已更新。

PatchNumber是已完成的版本數,剩餘部分用於在發佈時顯示用戶。

2

我經常看到Xyz,其中X是發佈號後的一年,yz是一年中的月份。即201是1月,發佈後2年。即當產品在5月推出時,它的第一個版本號是105.明年2月發佈的是202.

2

我們通常根據當前發行日期YYYY.MM.DD. *來版本化我們的項目,並且讓我們構建數字自動生成,例如,如果我們今天有一個版本,它會是2008.9.26.BUILD。

0

我只有一個號碼。第一版是001。第二次發佈的第三個測試版是002b3,依此類推。這僅僅是爲了個人的東西,現在我沒有任何「釋放」的東西,所以這都是理論。

4

我個人很喜歡用,重點是向後兼容的水平,該項目的用戶/產品可以期待一個方案:

之前1.0:

  • 0.0.1 =首先釋放
  • 0 .-。X =向後兼容更新
  • 0.X.0 =向後不兼容的更新

1.0之後:

  • -.- X =無界面更新改變
  • -.X.0 =與向後更新兼容接口添加
  • X.0.0 =向後不兼容的更新

使用兼容性作爲版本號的中心點可以使用戶更容易(特別是在te產品是庫的情況下)判斷是否能夠期望平滑升級或不升級。

+0

語義版本編制已經進入現場,因爲我寫了這個答案:http://semver.org/ – 2011-05-06 23:55:38

1

Major.minor.patch.build 修補程序是修補程序或修補程序版本。

如果您可以通過SVN獲取QA並且位於SVN上,則可以使用svn HEAD修訂版作爲內部版本號。通過這種方式,每個構建都會從源代碼控制和構建內容中描述它的來源。這是否意味着你必須建立該走了間隙(1.0.0.1,1.0.0.34 ....)

0

我開始使用僞格式類似Ubuntu的:Y.MMDD

這有助於有幾個原因:

  • 它更容易檢查版本要求:如果(版本< 8.0901)模/退出/等。;
  • 可以在您的構建過程

自動生成在那第二點(紅寶石&耙):

def serial(t) 
    t = Time.now.utc if not t.instance_of?(Time) 
    t.strftime("%Y").to_i - 2000 + t.strftime("0.%m%d").to_f 
end 

serial(Time.now)  #=> 8.0926 
serial(Time.now.utc) #=> 8.0927 

注:t.strftime(「%Y.%M %d「)to_f - 2000運行到浮點不精確:8.09269999999992

1

Major.Minor.BugFix.SVNRevision

e.g:3.5.2.31578

  • 的SVN版本讓你的代碼發送給客戶非常精確的和平。你絕對確定這個錯誤是否存在。
  • 它還有助於在發生應用程序錯誤時找到正確的PDB。 只需將SVN修訂版與您的構建服務器相匹配,將PDB複製到EXE位置,打開調試器並獲得崩潰堆棧跟蹤。
0

我以前喜歡的版本在80年代他們的帆船編譯器的楠塔基特方式:

快船冬季1984年
快船夏季1985
快船冬季1985
剪秋1986年
快船1987年夏天

哦和覆蓋物....

[得到淚眼]

相關問題