1

私を含む一部の開発者がオフィスだけでなくどこからでもアクセスできるように、職場のパブリック IP サーバーに SVN リポジトリを構築しています。ローカルのリポジトリが file:///svn_repos であることはわかっていますが、これまでにこのようなことを試みたことはありません。私が完全な馬鹿のように見えたらごめんなさい。

4

3 に答える 3

2

svn サーバーを同じボックスで実行されている apache に接続する必要があります。

これはあなたに役立つかもしれませんhttp://subversion.apache.org/packages.html

于 2013-05-28T13:51:56.763 に答える
0

Windows の場合は、次の手順に従います。

Linux の場合、apache、subversion、および mod_dav_svn が必要です (apt-get、yum などを使用してインストールします)。

  1. Apache をインストールする
  2. サブバージョンをインストールする
  3. 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アカウント(およびそのパスワード)

于 2013-05-28T14:30:42.237 に答える
0

サーバーに Subversion Edge をダウンロードしてインストールします。

http://www.collab.net/downloads/subversion

これにより、サーバーとリポジトリを管理するためのシンプルな Web UI が提供されます。クライアントは、http または https 経由でリポジトリにアクセスできます。

于 2013-05-28T14:17:38.227 に答える