如果我使用多個存儲庫,所有位於單個根文件夾下,我如何設置它,以便他們將使用單個主文件進行設置,但仍允許我自定義每個文件夾需要出現?多個存儲庫,單一設置
這是在Windows上,但我想這個過程在其他系統上會類似。
更新:我使用svnserve作爲服務。
如果我使用多個存儲庫,所有位於單個根文件夾下,我如何設置它,以便他們將使用單個主文件進行設置,但仍允許我自定義每個文件夾需要出現?多個存儲庫,單一設置
這是在Windows上,但我想這個過程在其他系統上會類似。
更新:我使用svnserve作爲服務。
svnserve
不適用於大型部署。如果您需要更細粒度的權限或集成等,請使用Web服務器(如Apache)。
如果您正在使用svnserve,則每個存儲庫中的conf/svnserve.conf
文件都有一個配置項,該配置項命名密碼數據庫文件。這是[general]
部分中的password-db
項目,只需將它們全部設置爲指向同一個文件即可。
如果你不使用svnserve,那麼這可能不適用。
根據你想要達到的目標和你正在使用的設置有不同的方法。
的svnserve
如果使用svnserve
,還有在每個被稱爲svnserve.conf
在那裏你可以使用定義的密碼文件庫中的文件。您可以在服務器根目錄中放入一個密碼文件,並將所有存儲庫指向那裏。
它應該是這樣的:
c:\svn\passwd
c:\svn\project1\conf\svnserve.conf
c:\svn\project2\conf\svnserve.conf
然後在這兩個svnserve.conf
文件,如
[general]
password-db = c:\svn\passwd
段應該做的伎倆,並仍將保持不同的ACL(authz
文件),每個倉庫
Apache
這是一個比較複雜一點,但
<Location /project1>
DAV svn
SVNPath C:/Repositories/project1
AuthType Basic
AuthName "Subversion Project1 repository"
AuthUserFile c:/etc/svn-auth-file
Require valid-user
AuthzSVNAccessFile c:/etc/svn-acl
</Location>
<Location /project2>
DAV svn
SVNPath C:/Repositories/project2
AuthType Basic
AuthName "Subversion Project2 repository"
AuthUserFile c:/etc/svn-auth-file
Require valid-user
AuthzSVNAccessFile c:/etc/svn-acl
</Location>
只要你使用相同的AuthUserFile每個啓用SVN的位置,你會得到你的結果。
您可能需要考慮在http://serverfault.com上發佈此類服務器配置類型問題,而不是像堆棧溢出一樣,服務器管理除外。 – jpierson 2009-12-08 16:03:24
2008年,當我發佈這個時,SO是城裏唯一的遊戲,它比系統管理員問題更像是一個開發人員問題。 – 2009-12-09 10:55:53