天天看點

源代碼管理工具

01 源代碼管理工具 概述

源代碼管理工具的起源

  • 為什麼會出現源代碼管理工具?

    為了解決在軟體開發過程中,由源代碼引發的各種蛋疼、繁瑣的問題

  • 源代碼會引發哪些問題?

    無法後悔:做錯了一個操作後,沒有後悔藥可以吃

    版本備份:費空間、費時間

    版本混亂:因版本備份過多造成混亂,難于找回正确的想要的版本

    代碼沖突:多人操作同一個檔案(團隊開發中的常見問題)

    權限控制:無法對源代碼進行精确的權限控制

    追究責任:出現了嚴重的BUG,無法得知是誰幹的,容易耍賴

    … …

  • 源代碼管理工具就是為了解決上述問題而生的!此乃軟體開發的一大福音!

源代碼管理工具的作用

  • 概括一下,源代碼管理工具的作用是

    能追蹤一個項目從誕生一直到定案的過程

    記錄一個項目的所有内容變化

    友善地查閱特定版本的修訂情況

    … …

現在就開始使用源代碼管理工具

  • 如果是團隊開發,使用源代碼管理工具是強制性的!
  • 如果是單人開發,也強烈建議現在就開始使用源代碼管理工具
  • 使用源代碼管理工具

    由于使用簡單,不會增加工作量

    不會對現有工作造成任何損害(壞的影響)

    是一位合格的軟體開發人員必須掌握的技術

常見的源代碼管理工具

  • CVS

    開啟版本控制之門

    1990年誕生,“遠古時代”的主流源代碼管理工具

  • SVN

    全稱是Subversion,集中式版本控制之王者

    是CVS的接班人,速度比CVS快,功能比CVS多且強大

    在國内軟體企業中使用最為普遍(70%~90%)

  • GIT

    一款偉大的分布式源代碼管理工具

    目前被越來越多的開源項目使用

    不過在國内企業尚未大範圍普及

02 源代碼管理工具 SVN

主要内容

  • 基本操作
  • 伺服器端按照配置
  • 用戶端軟體使用
  • 與Xcode的內建

基本操作

源代碼管理工具

1.checkout是将伺服器上的代碼下載下傳到本地(下載下傳所有檔案)

2.commit是将本地修改之後的檔案送出到伺服器(隻送出修改之後的)

3.update是将伺服器上的代碼更新到本地(隻會更新被修改的檔案)

SVN版本控制政策

拷貝-修改-合并 方案(svn,cvs采用)

源代碼管理工具
源代碼管理工具

其他版本控制政策

鎖定-修改-解鎖方案(vss)

源代碼管理工具
關于集中式和分布式的差別:
  • http://zhidao.baidu.com/question/32338956.html?qbl=relate_question_4&word=%BC%AF%D6%D0%CA%BD%20%B7%D6%B2%BC%CA%BD
  • http://wenku.baidu.com/link?url=SnoaUsca-yywky7AcvZWvQpYxHP1UhPtggw3cJggUZHyDscSCZyJtp2a7XT5I8hgYW6tM09fvZjTTq5DrGIf6I6X9ubHTBahZkjaxgcoVGi
  • http://baike.baidu.com/link?url=amd48_OZDAdH7XQWaBsnxTmCfrkLLM8pizR3gtPETXF7cc1yk3nv_CpBVjxxoDl8YXP–Uh2tIVjiRYVvkwWSq