Come specificare il repository svn in Apache dav?
-
21-08-2019 - |
Domanda
Ho la seguente configurazione:
<VirtualHost *:80>
ServerName svn.project1.com
<Location />
DAV svn
SVNPath /svn
</Location>
</VirtualHost>
<VirtualHost *:80>
ServerName svn.project2.com
<Location />
DAV svn
SVNPath /svn
</Location>
</VirtualHost>
Se navigando sia http://svn.project1.com/ o http://svn.project1.com/ dà un elenco di directory con entrambi i repository:
Revision 1270: /
* project1/
* project2/
Powered by Subversion version 1.4.4 (r25188)
Come faccio a ottenere entrambi gli host per puntare ai rispettivi repository?
Voglio essere in grado di utilizzare gli URL come:
http://svn.project1.com/trunk/
Al posto di:
http://svn.project1.com/project1/trunk/
E così impedire l'accesso ad esempio progetto2 da project1 cioè:
http://svn.project1.com/project2/
Grazie!
Soluzione
Questo funziona con SVNPath /svn/project#
. Ma essere consapevoli, credo che questo funziona solo se davvero hanno due repository separati. Per quanto posso dire dalle informazioni, si sta utilizzando un unico repository per entrambi i progetti.
Altri suggerimenti
<Location /svn/>
DAV svn
SVNParentPath "D:\repos"
SVNListParentPath On
AuthName "Subversion repository"
SVNPathAuthz on
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIDomain RAILINC
SSPIOfferBasic On
SSPIUsernameCase lower
SSPIOmitDomain On
AuthzSVNAccessFile "D:\repos\svnaccessfile.txt"
Require valid-user
</Location>
Non è sicuro, ma hai provato questo?
SVNPath /svn/project1/
Mentre si utilizza
SVNPath /svn/projectX/
dovrebbe risolvere il problema, si esporrà un grave difetto nel DavSVN. Il difetto che ha problemi con l'essere nella directory principale di un dominio. Ottenere gli errori casuali checkin che allo stato attuale, non hanno alcuna soluzione disponibile, è stato un tale problema che abbiamo dovuto passare da un sottodominio a una sottodirectory.