版本控制

1、何謂版本控制  它是一種軟件工程籍以在開發的過程當中,確保由不一樣人所編輯的同一檔案都獲得更新,它透過文檔控制記錄程序各個模塊的改動,併爲每次改動編上序號,而且編輯錯誤以後還能夠回溯到之前的版本java

2、爲什麼要使用版本控制系統     git

一、備份源代碼     github

二、能夠方便進行代碼版本的回溯     算法

三、能夠記錄是誰提交的代碼     apache

四、控制代碼訪問權限     windows

五、解決多人開發形成的代碼衝突     服務器

3、可供咱們選擇的版本控制系統  網絡

一、VCS  二、VSS、CVS  三、ClearCase、SVN、Perforce、TFS  四、Mercurial(水銀/水星)、Git架構

4、比較上面的版本控制系統(版本控制發展歷史)分佈式

 一、本地版本控制  二、集中版本控制  三、分佈式版本控制

5、咱們喜歡採用的版本控制系統  

一、SVN  二、Git 6、SVN  一、SVN的歷史:2000年2月,CVS做者之一Karl Fogel,CollabNet公司  

二、SVN的架構   1.SVN網絡示意圖   2.SVN的部署結構    (1)單機結構    (2)本地文件系統    (3)網絡結構    (4)C/S結構    (5)B/S結構  

 3.SVN的存儲結構    (1)SVN倉庫(Repository):保存各個版本的軟件資源、記錄版本更新歷史、維護版本分支……    

(2)本地的工做目錄(Working Directory):開發者進行工做的地方   

4.C/S結構下的存儲示意圖

 三、軟件   1.Apache官網地址:http://subversion.apache.org   2.TortoiseSVN官網地址:http://tortoisesvn.tigris.org

 四、SVN圖標的含義  五、SVN經常使用實操   1.Checkout檢出   2.Add添加文件或文件夾   3.Commit提交   4.Update to revision歷史版本回溯   

5.Update更新   6.衝突   7.鎖定   8.創建分支  

 9.忽略:    (1)設置SVN忽略文件和目錄(文件夾):http://blog.csdn.net/hemingwang0902/article/details/6904205    (2)SVN 管理Android項目中忽略的設置和注意事項     1)如下不該該歸入SVN版本控制範圍:      # bin目錄。編譯後生成的目標文件      # gen目錄。自動生成的R.java      尤爲是bin和gen目錄,必定要列入SVN忽略列表中!!切記。   

  2)若是是在Eclipse中,要設置build path讓其忽略.svn文件夾      菜單 - Project - Properties - Java Build Path - Source - xxx/src - Excluded,雙擊或點右邊的編輯,在Exclusion patterns中加入"**/.svn/**",讓Eclipse忽略.svn目錄便可。    

(3)Ignored Resource     .settings     .class     target     *.iml     .idea   

10.把一個項目文件夾發佈到SVN服務器上   11.Export導出   12.備份

 六、標準的SVN目錄結構   1.trunk主幹:主版本的代碼   2.tags里程碑版本:保存相對穩定的版本   3.branches分支:開發有必定風險的功能  

七、SVN的使用規範   1.先更新,再提交   2.多提交   3.不要提交不能經過編譯的代碼   4.每次提交必須書寫明晰的標註   5.提交時注意不要提交本地自動生成的文件   6.不要提交本身不明白的代碼   7.慎用鎖定功能  

八、SVN工做的一天 7、Git  一、Git簡介  二、Windows下Git的安裝   1.Windows版的Git官網:https://git-for-windows.github.io/   2.TortoiseGIT:https://tortoisegit.org  三、Git的優點   1.分佈式,強調個體   2.公共服務器壓力和數據量都不會太大   3.速度快、靈活   4.任意兩個開發者之間能夠很容易的解決衝突   5.離線工做  四、論述SVN與Git的區別   1.SVN是C/S結構,集中式;Git分佈式,也能夠有服務端   2.SVN客戶端只有工做區域;Git客戶端有工做區域和本地倉庫   3.SVN不能離線操做;Git可離線操做,可日誌和進行本地提交   4.SVN速度慢;Git速度快   5.SVN是按文件方式存儲;而GIT把內容按元數據方式存儲   6.SVN的分支就是版本庫中的另外的一個目錄;而Git同一個工做目錄下   7.SVN有一個全局版本號;而Git沒有   8.GIT的內容存儲使用的是SHA-1哈希算法,因此內容的完整性要優於SVN  

 9.SVN的checkout對應Git的clone、pull、fetch   10.SVN的update對應Git的checkout   11.SVN的delete對應Git的rm   12.SVN的commit對應Git的push 8、Android Studio協做開發  一、Android Studio支持的協做開發插件   1.SVN   2.Git   3.CVS   5.Mercurial  二、在AS使用SVN與Git   1.導入導出工程   2.提交代碼   3.更新代碼   4.還原代碼   5.忽略相關文件   6.解決代碼衝突   7.查看修改歷史  三、如何利用版本控制工具進行團隊協做開發   1.設置訪問權限   2.配置忽略   3.解決代碼衝突   4.有風險的功能在分支下操做,開發成功再進行合併   5.討論和代碼審覈

相關文章
相關標籤/搜索