Windows Server에서 SVN 및 Trac 서버를 설정하는 방법

Windows Server에서 SVN 및 Trac 서버를 설정하는 방법

대학원 연구실에서 SVN과 Trac을 설정해야 합니다. 우리는 Windows Server 2003을 실행하는 시스템을 갖고 있으며 이를 사용하고 싶었습니다. 우리에게 정말로 필요한 것 중 하나는 Windows 도메인에 로그인하여 인증하는 것입니다. 학교는 AD를 사용하여 하나의 도메인에 설정됩니다. 나는 이전에 이런 일을 해본 적이 없으므로 누군가가 그것이 얼마나 어려운지/가능한지/어떻게 하는지 말해 줄 수 있습니까?

감사해요

답변1

이것이 정확히 당신이 찾고 있는 것인지는 확실하지 않지만, 저는 BitNami의 자체 포함된 기능 중 일부를 사용했습니다.자체 포함 스택이전에는 내 개인적인 일을 위해 일했는데 그들은 더러운 일을 훌륭하게 처리했습니다. Subversion과 Trac 모듈이 모두 있으므로 두 모듈을 모두 설치한 다음 Windows 인증을 처리하도록 구성 파일을 변경하기만 하면 됩니다. 또한 BitNami 스택은 Apache를 사용하여 Trac 설치를 제공하므로 위에 제공된 링크를 따라가는 것이 쉽습니다.

답변2

여기서 전체 내용을 설명하는 것은 어려울 수 있습니다. 를보세요이것svn 설정 링크 및이것트랙 설정용. Windows 도메인으로 trac 인증을 받으려면 이 링크를 확인하세요.여기.

답변3

이미 좋은 링크(특히 proy)가 있지만 실제 예제가 도움이 될 수 있습니다.

다음은 이전 2.2.11 아파치와 함께 Windows(XP) 서버에 사용되는 httpd.conf의 일부입니다.

<...>
# Dynamic Shared Object (DSO) Support
<..>
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module  modules/mod_authz_svn.so
LoadModule sspi_auth_module modules/mod_auth_sspi.so
<...>
# provides list of repo with anonymous access
<Location /svn>
    DAV svn
    SVNParentPath "C:/data/repositories/"
    SVNListParentPath on
    SVNIndexXSLT "/svnindex.xsl"
    SVNAutoversioning on
</Location>

<Location /svn/>
    # Checked access for a deeper look
    # for single repository configuration (access right, etc), use a more specific entry in 'Location',
    # and use 'SVNPath "<path to repository>"' instead of 'SVNParentPath
    DAV svn
    SVNParentPath "C:/data/repositories/"
    SVNListParentPath on
    # for web browsing
    SVNIndexXSLT "/svnindex.xsl"
    SVNAutoversioning on
    # --- windows authentication
    AuthName "a nice, friendly and informative message"
    AuthType SSPI
    SSPIAuth On
    SSPIAuthoritative On
    SSPIDomain <YOUR_DOMAIN>
    SSPIUsernameCase lower
    # let non-IE client authentification (YES)
    SSPIOfferBasic On
    # comment the next line if you want to keep domain name in userid string passed down to mod_authz_svn
    SSPIOmitDomain On
    Satisfy Any
    Require valid-user
    # specific access control policy enforced by mod_authz_svn
    AuthzSVNAccessFile "C:/controls/svnaccesspolicy.private"
</Location>
...
# And the config for a series of Trac sites
# No authentication for read only
<Location /bugs>
    SetHandler mod_python
    # Date and Time localization, with the standard (fast)cgi
    SetEnv LC_TIME "fr_CH"
    SetEnv PYTHON_EGG_CACHE "C:/cache/egg"
    # Date and Time localization, with the modpython
    PythonOption TracLocale "French_Switzerland"
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnvParentDir "C:/data/trac"
    PythonOption TracUriRoot /bugs
</Location>
<LocationMatch "/bugs/[^/]+/login">
    SetEnv LC_TIME "fr_CH"
    SetEnv PYTHON_EGG_CACHE "C:/cache/egg"
    AuthName "Another nice and informative message"
    AuthType SSPI
    # NT Domain auth config
    SSPIAuth On
    SSPIAuthoritative On
    SSPIDomain <YourDomain>
    SSPIUsernameCase lower
    SSPIOfferBasic On
    SSPIOmitDomain On
    # following line squishes bug #1168 if IE has troubles editing wiki pages.
    SSPIBasicPreferred On
    BrowserMatch "MSIE 6\.0; Windows NT 5\." nokeepalive
    BrowserMatch "MSIE 7\.0; Windows NT 5\." nokeepalive
    # and this one is a tentative to solve some login issue with IE7 (http://trac.edgewall.org/ticket/4560#comment:22)
    SSPIOfferSSPI off
    SSPIPerRequestAuth On
    # Satisfy Any
    Require valid-user
</LocationMatch>
<snip>

보시다시피 두 사이트 모두 동일한 방법을 사용하여 유효성 검사를 위해 DC를 쿼리할 수 있습니다.

이는 이전 서버(winXp)에 대한 구성이었습니다. 아마도 약간 구식일 수 있으며 귀하의 경우 필요할 수 있는 SSL을 사용하지 않을 수 있습니다. 또한 trac과 Subversion은 모두 "수동으로" 설치되었습니다(즉, 통합 환경이 아님). 이는 일부 문제가 발생할 때에도 좋습니다(어디에 손가락을 두어야 할지 더 나은 아이디어가 있을 것입니다).

답변4

SVN - 사용VisualSVNServer는 Windows에서 최고의 사용 편의성을 제공하며 Active Directory와 통합되고 몇 초 만에 설치/업그레이드됩니다.

Trac - VisualSVN 사람들은Trac 설치 가이드그것으로 작업합니다. "지원되지 않음", "비공식" 등이 있지만 여전히 코드와 가이드가 있습니다.

관련 정보