安裝
yum -y install subversion
svnserve --version
顯示版本信息,則表示安裝成功
mkdir /home/svn
創建版本庫目錄
svnadmin create /home/svn/pro
pro目錄下生成了幾個文件,其中conf文件便是配置文件
cd conf
vim passwd 以 user = passwd 的形式編輯用戶名和密碼
[users]
zhangsan = mima1
lisi= mima2
vim authz
[/]
* = rw (所有用戶都可讀可寫)
[groups] 分組
admin = zhangsan,lisi,wangwu
common = lisi,wang
[/]
@admin = rw
@common = rw
vim svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
鈎子 hooks (可以將svn版本庫中的內容同步更新到指定目錄)
在 /home/svn/pro/hooks下
新建post-commit 文件
#!/bin/sh
export LC_CTYPE="zh_CN.UTF-8"
SVN=/usr/bin/svn
TODIR=/home/www #要強制更新的目錄
$SVN update –username name –password passwd $TODIR #執行更新
chmod a+x post-commit
向svn版本庫中導入文件(以導入/home/file/下的文件為例)
svn import /home/file/ file:///home/svn/pro
啟動svn服務
svnserve -d -r /home/svn
檢出svn庫中的內容
mkdir /root/svntest
cd /root/svntest
svn co svn://127.0.0.1/pro
目錄下便生成了一個 pro 目錄。里面的內容是 版本庫中的內容
執行 ll -a 可以看見 .svn 這邊是svn的記錄
新增幾個文件 touch 1.txt
為版本庫中提交內容
svn add * (一定要在 pro目錄下哦,因為要有 .svn呀)
svn commit -m 'add file'
刪除版本庫中的文件
svn delete svn://127.0.0.1/pro/er.txt -m 'del'
取消文件的修改
svn revert 回滾
提交沖突時候解決沖突
svn update
svn resolved 現文件最新
svn log 查看提交歷史
svn log -v dirname 查看目錄的修改信息
svn info 獲取當前版本庫的基本信息
svn diff 用來顯示特定修改的行級 詳細信息
svn diff -r 5 1.txt 比較當前 1.txt 與版本5的1.txt的不同。
svn list svn://127.0.0.1/sssmtest 列出版本庫中的文件
svn merge -r 22:21 filename 將文件從版本22回退到21