私を含む一部の開発者がオフィスだけでなくどこからでもアクセスできるように、職場のパブリック IP サーバーに SVN リポジトリを構築しています。ローカルのリポジトリが file:///svn_repos であることはわかっていますが、これまでにこのようなことを試みたことはありません。私が完全な馬鹿のように見えたらごめんなさい。
3 に答える
svn サーバーを同じボックスで実行されている apache に接続する必要があります。
これはあなたに役立つかもしれませんhttp://subversion.apache.org/packages.html
Windows の場合は、次の手順に従います。
Linux の場合、apache、subversion、および mod_dav_svn が必要です (apt-get、yum などを使用してインストールします)。
- Apache をインストールする
- サブバージョンをインストールする
- mod_dav_svn をインストール
次に、すべてを構成する必要があります。Apache 構成では、これを追加します。
<Location /svn>
DAV svn
SVNParentPath /var/www/svnrepo
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /etc/svn-auth-users
Require valid-user
SSLRequireSSL
</Location>
証明書を作成します:
openssl req -new > YOUR_SERVER.certificate.csr
openssl rsa -in privkey.pem -out YOUR_SERVER.certificate.key
openssl x509 -in YOUR_SERVER.certificate.csr -out YOUR_SERVER.certificate.cert -req - signkey YOUR_SERVER.certificate.key -days 1024
mv YOUR_SERVER.certificate.cert /etc/pki/tls/certs/
mv YOUR_SERVER.certificate.key /etc/pki/tls/private/
vim /etc/httpd/conf.d/ssl.conf
ユーザーを作成します:
htpasswd -cm /etc/svn-auth-users YOUR_USERNAME
svn サーバーを作成して構成します。
cd /var/www
mkdir svn
cd svn
svnadmin create YOUR_PROJECT_NAME
chown -R apache.apache YOUR_PROJECT_NAME
chcon -h system_u:object_r:httpd_sys_content_t /var/www/svnrepo/YOUR_PROJECT_NAME
chcon -R -h apache:object_r:httpd_sys_content_t /var/www/svnrepo/YOUR_PROJECT_NAME/*
mkdir -p /var/svn_template/{trunk,branches,tags}
svn import -m 'Initial import' /var/svn_template/ https://localhost/svn/YOUR_PROJECT_NAME/
service httpd restart
いくつかの Fedora サーバーでこれを実行しましたが、非常にうまく機能します。
次に、このアドレスで svn サーバーにアクセスできます: https://YOUR_SERVER_ADDRESS/svn/YOUR_PROJECT_NAME/ YOUR_USERNAMEアカウント(およびそのパスワード)
サーバーに Subversion Edge をダウンロードしてインストールします。
http://www.collab.net/downloads/subversion
これにより、サーバーとリポジトリを管理するためのシンプルな Web UI が提供されます。クライアントは、http または https 経由でリポジトリにアクセスできます。