1、簡介php
2、windows下svn的開啓與關閉windows
3、svn中五種圖標表明的含義服務器
4、案例ide
刪除服務器文件svn
歷史版本的找回3d
5、權限控制server
咱們來看看默認狀況下匿名用戶能作哪些事:blog
匿名用戶能夠查看svn的代碼庫,這是一個很嚴重的問題開發
匿名用戶不只能夠查看,還能夠將svn代碼庫中的內容checkout下來get
幸運的是,svn默認不容許匿名問題commit
如今要作的,禁止匿名用戶
修改配置文件 代碼庫下 vi conf/svnserve.conf
改成
再來看看匿名用戶的操做
實現了對匿名用戶的限制操做
———————————————— 華麗的分隔線 ——————————————
sc create SVNService binpath= "E:\Subversion\bin\svnserve.exe --service -r E:/server"
server即爲版本庫 該版本庫中又一個項目,如今來對其進行權限控制
project
a
aa.php
b
bb.php
c
a.php
b.php
權限分配時,應遵照從根目錄到子目錄、從設置最普遍權限到最精細權限、從只讀權限到讀寫權限設置原則,即從根目錄開始設置最普遍的訪問權限,而後逐步設置下屬子目錄的訪問權限
現有用戶 admin,user1,user2
全部的用戶對項目下的全部文件都有讀的權限
admin可以對全部的文件進行讀寫
user1 只能對a目錄下的文件進行讀寫
user2 只能對b目錄下的文件進行讀寫
進行配置:
首先編輯配置文件 vi svnserve.conf
20行 password-db = passwd
17行 authz-db = authz
前面的#去掉 意思是開啓用戶登錄及用戶權限配置
打開版本庫中conf目錄下的passwd
打開版本庫中conf目錄下的auth
[groups]
project1 = admin
[/]
* = r
@project1 = rw
[/a]
user1 = rw
[/b]
user2 = rw
————————————— 歷史版本的找回 ———————————————
——————————— 版本衝突的解決 ———————————————
我用user一、user2作實驗
首先來看看什麼樣的狀況下會發生版本衝突:其實也就一句話,試圖用低版本的文件去覆蓋高版本的文件
我先把user一、user2兩把的版本統一一下
如今開始在user1中修改一個文件,可是不進行commit
如今開始在user2中修改同名文件,並上傳
能夠理解爲 兩我的同時修改同一個文件,user2先改好而後上傳了,而後user1也修改好並進行上傳,這時候就會出現版本衝突
這時候能夠選擇update 與版本庫的版本進行統一,放心,他不會覆蓋你修改的文件,會自動生成多個版本的文件
我通常
直接進行修改
固然,實際開發中須要user1,user2協商好
6、windows下設置開機自啓動
sc create svnserve binpath= "E:\Program Files\Subversion\bin\svnserve.exe --service --root E:\server"