成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全程剖析:Subversion合并之簡單介紹一

開發 項目管理
本文介紹了Subversion合并問題,和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

Subversion合并問題你是否了解,這里就向大家簡單介紹一下,歡迎大家能和我一起學習Subversion合并。

Subversion1.5支持合并跟蹤,本文將對什么是合并跟蹤,及其對你們組織具備的意義提供了高級的總體看法,我將會從許多基本的解釋開始,如果你熟悉分支與合并,請掠過第1段。

1.什么是分支與合并?
開發團隊經常會在多個并行線上開發,叫做”分支”,一個分支從拷貝開發項目(或一個目錄)所有的文件開始,然后開始單獨的維護這個拷貝,文件開始都是相同的,但經過一段時間,它們將會不同,因為不同的開發者在不同分支做出了修改。

為什么分支?你或許在Subversion創建一個分支用來維護產品發布,同時為下一個版本工作。為什么?下一個版本會有新的特性,但是在維護分支你只接受bug修改。另一個用例是開發復雜的新特性,而它會將使得開發構建不穩定,通過在不同分支開發,你將其他開發者從可能的構建失敗中分離出去。Subversion自己的合并跟蹤特性在一個分支上開發了差不多一年。

Graph1.兩個分支的主線開發(trunk)
Subversion一直支持分支,但與其他系統不同,它不會真正的拷貝文件,那樣會快速加大版本庫的體積。相反,Subversion會創建一個到原來已有目錄的快速引用,只是記錄分支和trunk的文件修改,這樣的結果是創建分支非常迅速,版本庫幾乎不會增加大小。有些時候,代碼需要合并。例如,一個開發者在維護分支上修訂了一個bug,你會希望將修改合并到主開發線上,否則,你的下個發布還會有這個bug。另一個例子是在分支上開發一個新特性。就像我們說的,Subversion自己的合并跟蹤特性就是在分支上開發的,在2007年2月,這個特性足夠穩定,然后合并到了trunk。

Graph2.Subversion合并代碼
讓我們看一個簡單的合并實例,這是我們的代碼:

  1. trunk的代碼(主碼基)  
  2. main()  
  3. {  
  4. printf(”hello,wordn”);  
  5. }  
  6.  
  7. 現在我們做一個分支,從用戶的角度會有兩份代碼:trunk的代碼(主碼基)分支代碼  
  8. main()  
  9. {  
  10. printf(”hello,wordn”);  
  11. }  
  12. main()  
  13. {  
  14. printf(”hello,wordn”);  
  15. }  
  16. “Word”實際上應該為”World”,我們有一個bug,開發者在分支上修改了它,文件現在已經不同了。  
  17. main()  
  18. {  
  19. printf(”hello,wordn”);  
  20. }  
  21. main()  
  22. {  
  23. printf(”hello,worldn”);  
  24. }  
  25. 在某一時刻,bug修正合并到了trunk  
  26. >>svnmerge:Subversion將修改從分支合并到trunk。  
  27. main()  
  28. {  
  29. printf(”hello,worldn”);  
  30. }  
  31. main()  
  32. {  
  33. printf(”hello,worldn”);  

2.Subversion與合并
就像分支,Subversion一直支持合并,如果你要求它可以自動完成許多工作。但是Subversion不會”記住”什么代碼從什么分支在什么時候合并,盡管分支與合并在Subversion中工作很好,但是合并跟蹤特性的添加解決了許多限制:重復合并,假設你有一個特性分支與主干同步,沒有合并跟蹤時,你必須小心的(且手工的)記錄哪些修訂版本已經合并,這會非常乏味,而且如果你忘了合并特定修改或是創建叫做”偽造的沖突”的東西,這意味著文件沒有正確的合并,結果修訂版本有錯誤。
審計。當你合并一個特性分支回trunk,trunk的歷史只記錄了合并的發生,但是不知道合并了什么,這樣就很難準確找出合并了什么到trunk。

3.這對你意味著什么?
開發團隊多年里成功使用Subversion合并和分支,但是合并跟蹤提供了許多好處:合并跟蹤添加了審計/跟蹤能力(那些代碼合并了,何時,何地?)。許多組織因為管理目的需要這個特性。合并跟蹤減少了錯誤和管理費用。團隊會因為Subversion的合并跟蹤功能提高生產力。經常合并很重要。兩個開始相同的文件會隨著時間變得很不一樣,不同的越多,越難以合并。如果經常合并,增量的區別會比較小,會易于合并。合并跟蹤可以使得易于經常合并。許多選擇Subversion的公司采用限制分支的策略,他們不能從好的分支策略和并行開發中得到好處,例如:他們選擇在主開發線開發一個風險很大的新特性,結果就是項目成員要處理經常的構建錯誤。最終的好處:一些公司還沒有使用Subversion,而使用傳統的昂貴的工具,他們在等待合并跟蹤。本文對Subversion合并問題的介紹還沒有結束,請大家繼續關注。
 

【編輯推薦】

  1. 三大主流Subversion客戶端初探
  2. 術語匯編:簡單剖析Subversion Eclipse
  3. 在Linux下subversion和apache安裝配置
  4. 淺談Subversion密碼的遠程修改工具
  5. Subversion教程:新手快速入門
責任編輯:佚名
相關推薦

2010-05-14 14:20:16

2010-05-13 15:38:19

Subversion

2010-05-13 09:01:05

Subversion下

2010-05-19 12:41:32

Subversion

2010-05-25 12:59:00

Subversion

2010-05-14 13:21:39

Subversion1

2010-05-19 14:05:59

Subversion+

2010-05-13 10:47:20

Collabnet S

2010-05-14 15:14:10

安裝Subversio

2010-05-19 10:40:46

Subversion

2010-05-18 09:43:58

Subversion安

2010-05-18 09:59:06

Subversion安

2010-05-18 14:06:22

SubVersion和

2010-05-14 17:24:55

Subversion編

2010-05-19 13:12:42

Subversion服

2010-07-13 15:15:49

Perl二維數組

2010-06-01 18:03:05

Rsync 使用

2010-05-18 13:02:30

2010-06-01 11:13:40

Svn分支合并

2010-01-11 10:45:43

C++Builder
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色婷婷久久久久swag精品 | 日韩精品一区在线 | 在线成人精品视频 | 日韩三级一区 | 欧美成视频 | 日韩电影一区 | 91久久精品国产 | 91视频中文 | 亚洲一区二区中文字幕 | 亚洲一区在线播放 | 中日韩欧美一级片 | 成人免费视频网站在线看 | 日本精品久久 | 欧美久久精品 | 国产精品久久久久无码av | www日本在线| 国产情侣久久 | 国产中文字幕av | 亚洲精品视频在线播放 | 国产精品夜夜春夜夜爽久久电影 | 国产免费观看一级国产 | 日韩av在线一区二区 | av中文字幕在线观看 | 美女三区 | 国产在线色| 日日摸夜夜爽人人添av | 国产精品永久免费视频 | 91精品久久久久久久久中文字幕 | 亚洲高清成人 | 97伦理影院 | 性高朝久久久久久久3小时 av一区二区三区四区 | 欧美一区二区三区免费在线观看 | 日日摸日日添日日躁av | 日韩成人影院在线观看 | 综合久久综合久久 | 午夜精品久久久久久久久久久久 | 精品欧美一区二区三区久久久 | 国产成视频在线观看 | 国产精品免费一区二区三区四区 | 成人毛片网 | 中文字幕一二三区 |