Subversionサーバーのインストール方法


8

UbuntuマシンにSubversionサーバーをインストールしたいのですが。
どのパッケージが必要ですか?リポジトリを作成して新しいユーザーを設定するにはどうすればよいですか?


必要に応じて、Bazaar(bzr)のような分散SCMを使用する方がよい場合があります。これは、Subversionから取得するのは簡単ですが、サーバーを実行する必要はありません。これは、一人で作業していて、ログとセーフティネットが必要な場合に最適です。そして、私はgitについて言及する必要があります。gitは、最も強力なツールであるimhoです。
Martin Ueding、2012

sudo apt-get install subversion
AMIC MING 2013

回答:


10

svnには多くの設定があります。ここでは、http経由で使用可能な基本的なsvnリポジトリを取得するための簡単な手順をいくつか示します。

  1. 必要なパッケージをインストールします。 apt-get install subversion apache2 libapache2-svn
  2. ディレクトリ構造を作成します。 mkdir -p /var/svn/repos/
  3. リポジトリを作成します。
    • cd /var/svn/repos/
    • svnadmin create --fs-type fsfs <your-repository>
  4. リポジトリにインポートするProject-Strucktureを作成します。
    • mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
  5. プロジェクトをリポジトリにインポートします。
    • svn import /tmp/myproject file:///var/svn/repos/<your-repository> -m "initial import"
  6. http経由でアクセスできるようにします。
    • cd /etc/apache2/sites-available
    • touch subversion.conf
    • vim subversion.conf

次に、この構成で空のファイルを編集します。

NameVirtualHost *:80

<VirtualHost *:80>   
  <Location /svn>
      ErrorDocument 404 default
      DAV svn
      SVNParentPath /var/svn/repos
      SVNListParentPath off
      Require valid-user
      AuthType Basic
      AuthName "subversion access"
      AuthUserFile /var/svn/.htpasswd
      AuthzSVNAccessFile /var/svn/authz 
  </Location>
</VirtualHost>
  • Apacheに対してdav_svnモジュールを有効にします。 a2enmod dav_svn
  • Apacheのauthz_svnモジュールを有効にします。 a2enmod authz_svn
  • VHost構成を有効にします。 a2ensite subversion.conf
  • 次にWebサーバーを再起動します。 /etc/init.d/apache2 restart
  • htpasswdを作成します。 htpasswd -c /var/svn/.htpasswd user
  • リポジトリのアクセス制御ファイルを作成します。 touch /var/svn/authz
  • 空のauthzファイルを編集します。 vim /var/svn/authz
  • ユーザーに読み取り/書き込み権限を付与します。

[あなたのリポジトリ:/]

ユーザー= rw

http経由でリポジトリをチェックアウトしてみましょう。 svn checkout http://your-server/svn/your-repository


1
私は変化が小さすぎると編集を行うことはできませんが、言いたいことが最後の行修正する可能性checkoutとは対照的に、とceckout
nanofarad

このパッケージlibapache2-svnが見つかりません。エラー:#状態情報を読み込んでいます...完了E:パッケージlibapache2-svnが見つかりませんシステム:ubuntu 12.04 32ビット(すべてのリポジトリーが有効)
shantanu

2
また、authz_svnモジュールを有効にする必要がありますInvalid command 'AuthzSVNAccessFile', perhaps misspelled or defined by a module not included in the server configuration。そうしないと、が取得されます。コマンドa2enmod authz_svnを使用してこれを行うことができます。
mrswadge 2013

2

マニュアルを読み始めます。私は現在同じことをしています。

でリポジトリを設定したらsvnadmin create /path/to/repo、を使用svnserve --root /path/to/repoしてリポジトリをで使用できるようにすることができますsvn://yourhost/。必要に応じて、TCPポート3690を開きます。

HTTP経由でSVNを使用することは可能ですが、その部分はまだ読んでいません:o


2

subversionパッケージが必要になります。

sudo apt-get update
sudo apt-get install subversion

このパッケージには、クライアント、Subversionリポジトリを作成するツール、およびサーバーが含まれています。




0

subversionをインストールするには、ターミナルを開いて次のコマンドを実行します:

sudo apt-get install subversion libapache2-svn

/ svnにsubversionリポジトリを作成しますが、十分なスペースがある場所を選択する必要があります。

sudo svnadmin create /svn

このリポジトリの所有者をApacheユーザーに変更します。

sudo chown -R www-data:www-data /svn

後で使用するための基本的なSubversionリポジトリを作成します(本番環境/ QA /テスト/統計../など)。

sudo mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches

それらのディレクトリをリポジトリにインポートします

sudo svn import /tmp/myproject file:///svn -m "initial import"

次に、subversion webdavモジュールの設定ファイルを編集する必要があります。必要に応じて、別のエディターを使用できます。

sudo gedit /etc/apache2/mods-enabled/dav_svn.conf

構成ファイルのLocation要素は、たとえば、http://www.server.com/svnからsubversionにアクセスできるルートディレクトリを指定します

<Location /svn>

DAVモジュールを有効にするには、DAV行のコメントを解除する必要があります

# Uncomment this to enable the repository,
DAV svn

SVNPath行は、svnadminコマンドでリポジトリを作成した場所と同じ場所に設定する必要があります。

# Set this to the path to your repository
SVNPath /svn

次のセクションでは、認証をオンにします。これは単なる基本認証なので、非常に安全であるとは考えないでください。パスワードファイルは、AuthUserFile設定で設定されている場所に配置されます。デフォルトのままにしておくことをお勧めします。

# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd

リポジトリでユーザーを作成するには、次のコマンドを使用します。

sudo htpasswd -cm /etc/apache2/dav_svn.passwd <username>

-cオプションは、ユーザーを初めて作成するときにのみ使用する必要があることに注意してください。その後、パスワードのMD5暗号化を指定する-mオプションのみを使用しますが、ファイルは再作成しません。

例:

sudo htpasswd -cm /etc/apache2/dav_svn.passwd geek
New password:
Re-type new password:
Adding password for user geek

次のコマンドを実行して、Apacheを再起動します。

sudo /etc/init.d/apache2 restart

ありがとう:http : //www.howtogeek.com/howto/ubuntu/install-subversion-with-web-access-on-ubuntu/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.