什麼是SVN(subversion) php
SVN是近年來很是優秀的版本管理工具,與CSV管理工具同樣,SVN是一個跨平臺開元版本控制系統,可是SVN不同凡響的是,SVN會備份並記錄每一個文件每一次的修改更新變更。這樣咱們能夠把任意一個時間點檔案恢復到想要的某一箇舊版本,固然也能夠直接瀏覽指定文件的更新歷史記錄程序員
SVN服務搭建web
# yum install subversion -y # svnserve --version //查看版本
爲程序員建立倉庫目錄repovim
# mkdir -p /opt/svn/repo/ //建立目錄 # svnadmin create /opt/svn/repo/ //建立新倉庫 # ls !$ //查看上一次使用的路徑
注意:配置項前不能有空格windows
# vim /opt/svn/repo/conf/svnserve.conf //注意:配置項前不能有空格 anon-access = none //匿名用戶沒有任何權限 auth-access = write //認證用戶具備寫權限 password-db = /opt/svn/repo/conf/passwd //用戶密碼文件 authz-db = /opt/svn/repo/conf/authz //用戶信息文件
啓動和關閉SVN服務服務器
# svnserve -d -r /opt/svn/repo/ //關閉經過kill pid 或者pkill svnserve # netstat -tunlp | grep svnserve
netstat -tunlp | grep svnserveide
注意:配置項前不能有空格svn
# vim /opt/svn/repo/conf/passwd //建立帳戶密碼 [users] zhangsan = abc123 sysadmin = abc123 # vim /opt/svn/repo/conf/authz //建立權限文件 [/] //根目錄 下面寫入帳戶及權限(r讀 w寫) zhangsan = r sysadmin = r [/webphp] sysadmin = r zhangsan = rw # mkdir /opt/svn/repo/webphp # svn import webphp/ file:///opt/svn/repo/webphp -m "初始化SVN目錄" //導入webphp
文件通常是存儲在\db\revs文件夾下,裏面有一堆以版本號命名的文件,如:0、一、二、三、4......,那個就是了。svn先把0版本的狀態壓縮成1個文件,而後每次版本更新時就針對變更的部分作一個壓縮文件,每次都是增長一個增量包,最後在服務器上能看到文件名爲從0開始到最終版本的一系列文件工具