vps構成ノート(10)svnサービス架設


linuxの下にsvnサーバーを架設して、少し難易度があって、私は多くの資料を探して、今インストールに成功して、サービスも起動して、しかしクライアントで引き下がることができなくて、下は1篇の関連する資料で、もし国外のvpsを購入したいならば私を探すことができて、ハ
いくつかのお金を稼ぐプロジェクトを紹介して、興味があれば私に連絡してください.
 
 
恥ずかしいことにgitを学ぶ時間を割いていないので、とりあえずここで現在の主流のsubversion(svn)の架設記録を記録しておきます.ネット上にはもうたくさんありますが、ここでは整理記録するだけです.svnは現在、サービスとして全体的に2つの一般的な形式のsvn自身のプロトコルの方式あるいはhttpプロトコルを歩むことがあり、svn自身のプロトコルは言うまでもなく簡単で便利なコマンドを構築することができます:
sudo svnserve -d --listen-port 1234 --listen-host scm.myhost.com --pid-file /var/run/svnserved.pid -r /scm/svn/repos/myproject
各パラメータは大体意味があります:-dバックグラウンドdaemonサービス方式を指定してlisten-portリスニングポート1234 listen-hostリスニングドメイン名scm.myhost.com pid-file実行時プロセスPID号記録ファイルパス/var/run/svnserved.pid-r指定プロジェクトsvnライブラリが存在するパス./scm/svn/repos/myproject架設が完了するとsvn checkoutでソースコードを検出できます:
svn co svn://scm.myhost.com:1234/myproject
svnライブラリ作成コマンド
svnadmin create /scm/svn/repos/myproject
基本ライブラリを構築した後、一般的に基本的なソース管理layoutレイアウトを構築する必要があります:
mkdir -p /tmp/layout/{trunk,branches,tags}
cd /tmp/layout
svn import . file:////scm/svn/repos/myproject -m 'init project layout'
それから私たちは後でcheckout主線コードでいいです:
svn co svn://scm.myhost.com:1234/myproject/trunk
svnのhttpプロトコル方式は現在apacheコンテナに依存していますが、よろしければフロントエンドでvarnish/nginxで要求をapacheコンテナに転送しても対外統一サービスの目的を達成することができます.基本的なインストールは詳しくは述べませんが、ここではvhostの下の構成方法だけを書きます.まず、いくつかの共通ファイルを作成する必要があります:/scm/svn/conf/accessfileは、すべてのプロジェクトの各アカウント権限を設定するために使用されます.具体的には、svnのプロファイルドキュメントを参照してください.ここでは、例:
[groups]
administrator = axiong <script language="JavaScript" src="http://book.book560.com/ads/ads728x15.js" type="text/javascript"></script>
[/]
@administrator = rw
* =
/scm/svn/conf/passwdfileは、すべてのプロジェクトのユーザーと対応するパスワードを指定するために使用されます.もちろん、この部分はmysqlでもできます.小型プロジェクトは必要ありません.テキストが便利なので、apache-utilのhtpasswdで生成できます.指定が完了するとvhostの構成になります.
<VirtualHost *:80>
        ServerName scm.myhost.com
        <Directory />
                Options Includes FollowSymLinks
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
    <Location /svn>
        DAV svn
        SVNParentPath /scm/svn/repos
        AuthType Basic
        AuthName "Subversion System"
        AuthUserFile /scm/svn/conf/passwdfile
        AuthzSVNAccessFile /scm/svn/conf/accessfile
        Satisfy Any
        Require valid-user
    </Location>
</VirtualHost>

これでいいhttp://scm.myhost.com/svn/myprojectのsvnライブラリは、後で/scm/svn/reposの下でより多くのsvnライブラリを構築して、統一管理されたアカウントとパスワードを使用することもできます.注意/scm/svn/reposの各プロジェクトにはapacheが存在するグループまたはユーザーの書き込み権限が必要です.そうしないと、コードがコミットされません.
更新します:locationアドレスを修正してtracと協力しやすいです