⑴ 如何在linux下添加svn用戶,svn有操作許可權的用戶
如果你的SVN伺服器是架設在Apache上的話,就是採用Apache的用戶管理方式,會有兩個文專件,一個文件是存放屬用戶名和密碼(使用htpasswd命令管理),另一個文件存放用戶和組的許可權描述(文本編輯方式管理)
⑵ linux svn許可權設置時某個目錄該用戶為只讀許可權,但是在客戶端還是可以checkout
只讀權抄限本來就是允許讀襲取啊,可以checkout、update,只是不能commit
你如果想禁止他checkout,應該設置為他無任何許可權,比如在集成了Apache的SVN環境中,限制user1沒有任何許可權,就在許可權文件對應的文件夾條目下寫上:
user1 =
⑶ svn文件夾許可權修改為無權後,同步時不刪除該目錄
如果你的SVN伺服器的用戶ID和許可權管理是基於操作系統用戶的,那麼可以通過設置不同操作系統用戶對各文件夾的許可權來限制
如果你的SVN伺服器的用戶ID和許可權管理是基於Apache的,那麼只能考慮從鉤子程序下手了,研究一下pre-commit這個鉤子吧,這個鉤子是在正式提交操作之前伺服器端自動執行的,你可以編寫這個鉤子,在commit時檢查是否刪除文件夾,如果是則返回錯誤信息。雖然我沒驗證過,但理論上應該可以解決
⑷ linux centos6.5 svn許可權設置無效
如果 api是一個項目的名稱
[api:/]
⑸ linux系統上svn如何實現許可權控制
在你的版本庫中有個conf文件夾,在這里有你要編輯的文檔來設置許可權。
配置SVN
1、 建立版本庫目錄(可建立多個,新建庫後以下各項都需重新配置。注意區別安裝目錄與版本庫目錄,以下講的都是版本庫目錄)
mkdir –p /home/svn/repos
#類似可以創建 mkdir –p /home/svn/repos2 /home/svn/repos3
2、 建立svn版本庫(與上面目錄對應)
svnadmin create /home/svn/repos
執行此命令後svn自動在repos目錄下添加必須的配置文件.
注意:版本庫不同於一般的文件夾, 直接在操作系統上新建文件無法被SVN識別, 必須使用import命令將文件導入版本庫.
此為svn內部指令,create用於新建版本庫。請使用svn help查看詳細說明。
3、 修改版本庫配置文件
vi /home/svn/repos/conf/svnserve.conf
各參數功能在配置文件的注釋中有說明, 此處配置如下:
[general]
anon-access = none # 使非授權用戶無法訪問
auth-access = write # 使授權用戶有寫許可權
password-db = passwd # 指明密碼文件路徑
authz-db = authz # 訪問控制文件
realm = /home/svn/repos # 認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字。其它採用默認配置. 各語句都必須頂格寫, 左側不能留空格, 否則會出錯.
4、 配置用戶
vi /home/svn/repos/conf/passwd
輸入以下內容:
[users]
admin = admin
可以添加多個,此為用戶名和密碼。
5、 配置許可權
vi /home/svn/repos/conf/authz
此配置文件設置各用戶的授權。
包括只讀r,讀寫rw。沒有列出的用戶,則不允許訪問。還可以對用戶分組,具體請參考svn手冊,以下是簡單例子:
#對倉庫repos根目錄許可權設置
[repos:/]
admin = rw
* = r
7、 啟動服務
svnserve -d -r /home/svn/
⑹ linux配置SVN,添加用戶,配置用戶組的許可權
用xshell登陸伺服器,cd切換到伺服器中svn的項目倉庫目錄中,然後切換到conf文件中(也可使用xftp),會看到3個文件,分別是
authz、passwd、svnserve.conf
首先編輯svnserve.conf主配置文件,主要是對以下幾項修改
如果後面大家要用到組許可權的話,大家看authz-db = authz 前面應該會有 # 號鍵,記得去掉,這樣才能在下面分配組許可權的時候,才能起作用。
建立svn用戶以及密碼:
配置組:
配置各個組許可權:
保存修改後的svnserve.conf ,passwd,authz 三個文件
然後用下面的命令重啟一下svn
查看svn進程:ps -ef | grep svn 或者 ps aux | grep svn
強制殺死進程:kill -9 進程號
重啟svn(/home/svn為自己的目錄地址):svnserve -d -r /home/svn
最後看看是不是成功了,可以在本地測試一下,看看賬戶是否可用,對應的許可權是不是已經有了,不是該組的用戶應該不能訪問沒有賦予許可權的目錄的
helloword倉庫:
現在對於def項目中,我不想讓產品部的人看到開發部和數據部的目錄下面的數據怎麼辦?可以通過 = 來設置,沒有設置許可權的人統統不能訪問, = 這一句的目的,就是割斷許可權繼承性,使得管理員可以定製某個目錄及其子目錄的許可權,從而完全避開其父目錄許可權設置的影響
⑺ linux 已經安裝svn 怎麼配置
代碼庫創建
SVN軟體安裝完成後還需要建立SVN庫
[root@Linux moles]# mkdir -p /opt/svn/repo
[root@Linux moles]# svnadmin create /opt/svn/repo
執行上面的命令後,自動建立repo測試庫,查看/opt/svn/repo 文件夾發現包含了conf, db,format,hooks, locks, README.txt等文件,說明一個SVN庫已經建立。
配置SVN代碼庫
進入上面生成的文件夾conf下,進行配置
[root@Linux moles]# cd /opt/svn/repo/conf
用戶密碼passwd配置
[root@Linux password]# cd /opt/svn/repos/conf
[root@Linux conf]# vim passwd
修改passwd為以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
root=raykaeso
用戶名=密碼
這樣我們就建立了root用戶, raykaeso密碼
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
許可權控制authz配置
[root@Linux conf]# vi + authz
目的是設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:
#設置[/]代表根目錄下所有的資源
[/] 或者寫成[repl:/]
root= rw
意思是root用戶對repo測試庫下所有的目錄有讀寫許可權,當然也可以限定。
如果是自己用,就直接是讀寫吧。
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
服務svnserve.conf配置
[root@Linux conf]# vim svnserve.conf
追加以下內容:
[general]
#匿名訪問的許可權,可以是read,write,none,默認為read
anon-access=none
#使授權用戶有寫許可權
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#訪問控制文件
authz-db=authz
#認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字
realm=/opt/svn/repositories
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
配置防火牆,SVN埠為3690
[root@Linux conf]# vi /etc/sysconfig/iptables
添加以下內容:
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT
保存後重啟防火牆
[root@Linux conf]# service iptables restart
啟動SVN
svnserve -d -r /opt/svn/repo
啟動SVN服務
svnserve -d -r /opt/svn/
注意:如果在一台伺服器上同時啟動多個版本管理,那麼啟動路徑必須是所有項目倉庫的根路徑:比如
/opt/svn/project1 /opt/svn/project2 ——————-> /opt/svn/
參考:CentOS 6.2 SVN搭建 (YUM安裝)-http://www.leixuesong.cn/226
⑻ linux下svn怎麼配置路徑許可權
Linux 下可以直接通過如下命抄令直接獲取svn server:(我使用的伺服器系統為Debian 7.5 穩定版)
apt-get install subversion
安裝完成後,可通過svnserve --version 查看安裝的版本,我所使用的svn server 版本為1.6.17:
二、創建代碼庫
創建庫(以test庫為例):
sudo svnadmin create /home/user/svn/test
這樣,一個簡單的代碼倉庫就創建完成了。
接下來啟動svn服務:
svnserve -d -r /home/user/svn/test
然後client端就可以通過「svn://ip.ip.ip.ip/test」來訪問svn了。
⑼ 如何讓 SVN 或者 GIT 保留 Linux 文件許可權
如何讓 SVN 或者 GIT 保留 Linux 文件許可權區別1、GIT是分布式的,SVN不是這是GIT和其它非分布式的版本控制系統,最核心的區別;GIT跟SVN一樣有自己的集中式版本庫或伺服器。但,GIT更傾向於被使用於分布式模式,也就是每個開發人員從中心版本庫/伺服器上chectout代碼後會在自己的機器上克隆一個自己的版本庫。區別2、Git直接記錄快照,而非差異比較Git和其他版本控制系統的主要差別在於銷氏,Git 只關心文件數據的整體是否發生變化,而棗伏大多數其他系統則只關心文件內容的具體差異。Git 並不保存這些前後變化的差異數據。實際上,Git 更像是把變化的文件作快照後,記錄在一個微型的文件系統中。每次提交更新時,它會縱覽一遍所有文件的指紋信息並對文件作一快照,然後保存一個指向這次快照 的索引。為提高性能,若文件沒有變化,Git不會再次保存,而只對上次保存的快照作一鏈接。區別3、近乎所有操作都是本地執行在 Git 中的絕大多數虧岩散操作都只需要訪問本地文件和資源,不用連網。但如果用 CVCS 的話,差不多所有操作都需要連接網路。因為 Git 在本地磁碟上就保存著所有當前項目的歷史更新,所以處理起來速度飛快。
⑽ linux下搭建的SVN,用戶組無法檢出新添加的目錄,提示出錯還有許可權錯誤
錯誤提示的意思是無法連接到URL,那說明你的svn路徑就是錯的。
根據你的描述「版本版庫是home/svn/或者是home/svn/project」,權那你的url就應該包含以上路徑。
嘗試在IP地址和/owner中間加上home/svn/或者是home/svn/project試下。
有問題再追問