1. 程式人生 > >【SVN】版本控制軟體

【SVN】版本控制軟體

SVN版本控制軟體
SVN是什麼
SVN的全程是subversion,SVN版本控制軟體可以解決協助開發、遠端開發和版本回退三個問題。

特點:操作簡單、入門簡單、跨平臺操作 。

SVN是輸入C/S服務類軟體,有客戶端和服務端。

SVN版本控制軟體
SVN是什麼
SVN的全程是subversion,SVN版本控制軟體可以解決協助開發、遠端開發和版本回退三個問題。

特點:操作簡單、入門簡單、跨平臺操作 。

SVN是輸入C/S服務類軟體,有客戶端和服務端。

SVN的服務端
checkout(檢出)

update(更新)

Commit(提交、上傳)

å¨è¿éæå¥å¾çæè¿°
SVN的伺服器的安裝和配置工作
安裝按照教程一步步的安裝即可 SVN安裝教程 注意:安裝的時候,不要出現中文、特殊符號即可。

配置工作:

先在svn目錄下建立一個WebApp資料夾
在WebApp檔案下簡歷Shop。目前還只是資料夾,還需要和svn產生聯絡
在DOS命令列下輸入 svnadmin create Shop 資料夾,如果配置成功,那麼shop應該多了6個檔案
伺服器監管:

Apache— http://localhost:8080 訪問htdocs目錄

SVN— svn://localhost: 訪問相關的資料倉庫(如shop)

svnserve -d -r D:/svn/WebApp/Shop

SVN的許可權的配置檔案都在conf中

開啟svnserver.conf ,找到 #anon-access = read (19行)anon-access = write
SVN客戶端的配置
傻瓜式安裝,記得重啟一下即可
還可以安裝漢化包
配置完之後第一次牽手:
checkout(檢出)
開啟隱藏功能如果能看到.svn這個資料夾就說明客戶端和服務端連線起來了,檢出成功;
SVN 使用的詳解
三大指令

checkout 檢出操作: 1.連線到伺服器 2.第一次連結的時候更新資料到本地,後面使用update(更新指令)

commit 提交程式碼:

å¨è¿éæå¥å¾çæ

update 更新操作

右鍵更新操作即可自動更新最新的版本到本地。

圖示集的含義
圖示集的一些含義

å¨è¿éæå¥å¾çæè¿°
常規就是伺服器和客戶端資料一致;
無版本控制,編寫好的檔案沒有上傳佇列;
鎖定圖示,伺服器端已鎖定。


忽略功能
忽略功能就是自己不想分享到伺服器,僅僅是給自己看的內容:

忽略某個資料夾

å¨è¿éæå¥å¾çæè¿°

忽略某個型別的檔案

å¨è¿éæå¥å¾çæè¿°

版本回退
每次修改的時候之後,提交的時候需要寫好備註:

å¨è¿éæå¥å¾çæè¿°
但是我又想恢復到某個版本:

å¨è¿éæå¥å¾çæè¿°
可以根據日誌的資訊選擇要回退的狀態:

å¨è¿éæå¥å¾çæè¿°

//再也不擔心錯誤刪除了吧,前提是需要commit你的程式碼

版本衝突
當兩個人同時修改一份文件的時候就可能發生衝突

å¨è¿éæå¥å¾çæè¿°
避免版本衝突:

錯開開發時間

錯開開發模組

通過svn解決版本衝突問題:

一、更新伺服器資料到本地

å¨è¿éæå¥å¾çæè¿°

二、刪除三個帶問好的檔案

三、修改index.php衝突的檔案

四、重新提交

å¨è¿éæå¥å¾çæè¿°

配置多倉庫與許可權
監管總目錄
許可權限制
authz:授權檔案,告訴使用者有哪些許可權

passwd:認證檔案,表示使用者名稱和密碼

預設情況、兩個檔案都是禁用的,必須要開啟上面兩個檔案,具體步驟如下:

註釋匿名使用者可讀寫的許可權:

å¨è¿éæå¥å¾çæè¿°
開啟認證和授權檔案

å¨è¿éæå¥å¾çæè¿°
編寫認證檔案,定義使用者和密碼:開啟passwd

å¨è¿éæå¥å¾çæè¿°

編寫授權檔案:

å¨è¿éæå¥å¾çæè¿°

分組+授權

測試是否成功

SVN的配置和管理
配置伺服器的自啟動服務
sc create SVNService binpath = “D:\subversion\bin\svnserve.exe – service - D:/svnroot” start = auto
在cmd中輸入相關命令: sc create 服務名稱 binpath=空格"svnserve.exe --service"

在控制面板-管理工具-服務找到SVNserver
執行成功,svn監管服務開發成功
使用批處理檔案來停止和開啟管理器
啟動服務 net start 服務名稱

停止服務 net stop 服務名稱

刪除服務 sc delete 服務名稱

封裝成為.bat封裝就可以減少很多工作量

模擬真實場景(重難點)
1、 使用鉤子程式對專案進行更新

post-commit.tmpl: 事物完成之後觸發的鉤子程式

預設情況用批處理或者Shell指令完成

SVN擴充套件程式
1、BAE雲引擎

百度應用引擎(BAE),網路應用開發平臺。

百度應用開發平臺

未完待續 詳見:相關視訊課程