Solaris -> Solaris10 -> サーバ構築 -> SubVersion









空状態からの環境構築

作業環境確認

リポジトリ             : /export/svn/www
チェックアウト作業用   : /work/www
登録するファイルの場所 : /tmp/www

リポジトリ指定方法

バージョン管理する場合、
最新バージョンを trunk とし 各バージョンを tags 配下に登録する

  最新バージョンをチェックアウトする場合
    httpで指定する場合: http://localhost/svn/www/trunk /work/www
    svn で指定する場合: svn://localhost/www/trunk /work/www

  バージョン v1.0.0 をチェックアウトする場合
    httpで指定する場合 :  http://localhost/svn/www/tags/v1.0.0 /work/www
    httpで指定する場合 :  http://localhost/www/tags/v1.0.0 /work/www

空状態からの環境作成

リポジトリ作成
   * svn のリポジトリデータベースを作成する。
   $ svnadmin create /export/svn/www
   $ ls -l /export/svn/www
   -rw-r--r--   1 webservd webservd     229 11月 20日  16:16 README.txt
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:16 conf
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:16 dav
   drwxr-sr-x   5 webservd webservd     512 11月 20日  16:16 db
   -r--r--r--   1 webservd webservd       2 11月 20日  16:16 format
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:16 hooks
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:16 locks
   $

   * svn コマンドを使用するために以下のファイルを修正
     /export/svn/www/conf/passwd
       ユーザ名=パスワード  を追加する
       例)
       webservd=webservd

     /export/svn/www/conf/svnserve.conf
       認証で使用するファイルを指定する。
       例)
       password-db = passwd

初期状態作成

   * svn デーモンが起動していることを確認する。
     (svnserve -d --root=/export/svn)

   $ svn checkout svn://localhost/www /work/www
   Checked out revision 0.
   $
   
   * svn管理ファイルが作成されることを確認する。
   $ ls -l /work/www/.svn
   -r--r--r--   1 webservd webservd     176 11月 20日  16:23 entries
   -r--r--r--   1 webservd webservd       2 11月 20日  16:23 format
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:23 prop-base
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:23 props
   drwxr-xr-x   2 webservd webservd     512 11月 20日  16:23 text-base
   drwxr-xr-x   5 webservd webservd     512 11月 20日  16:23 tmp
   $

ディレクトリ作成
     * 最新バージョン(trunk) とバージョン管理用(tags)の
     登録用ディレクトリを作成する。
     $ mkdir /work/www/trunk
     $ mkdir /work/www/tags

     $ ls -l /work/www/
     drwxr-xr-x   2 webservd webservd     512 11月 20日  16:25 tags
     drwxr-xr-x   2 webservd webservd     512 11月 20日  16:25 trunk
     $

追加ディレクトリの反映
     * 作成したディレクトリをリポジトリに追加する。
     $ svn add /work/www/*
     A         /work/www/tags
     A         /work/www/trunk
     $

     * リポジトリに反映させる
     $ svn commit -m "" /work/www
     Authentication realm:  xxxxxxxx-xxxxxxxxx-xxxx-xxxxxxxxx
     Password for 'webservd':
     Adding         www/tags
     Adding         www/trunk

     Committed revision 1.
     $

最新版初期状態の作成
     * チェックアウトディレクトリを作り直すので削除する。
     $ rm -rf /work/www
     $

     * 最新バージョン(trunk)をチェックアウトする。
     $ svn checkout svn://localhost/www/trunk /work/www
     Checked out revision 1.
     $

ファイルの追加 
     * /tmp/www のファイルを /work/www へコピーする。
     $ pwd
     /work/www
     $ ls -la
     drwxr-xr-x   6 webservd webservd     512 11月 20日  16:40 .
     drwxrwxrwx   3 root     root         512 11月 20日  16:29 ..
     drwxr-xr-x   6 webservd webservd     512 11月 20日  16:29 .svn
     drwxr-xr-x   2 webservd webservd     512 11月 20日  16:31 css
     drwxr-xr-x   2 webservd webservd     512 11月 20日  16:31 gif
     -rw-r--r--   1 webservd webservd    1804 11月 20日  16:31 index.html
     drwxr-xr-x   2 webservd webservd     512 11月 20日  16:31 js
     $

追加ファイルの反映
     * ファイル及びディレクトリの追加する。
     $ svn add /work/www/*
     A         /work/www/css
     A         /work/www/css/common.css
     A         /work/www/gif
     A         /work/www/gif/menu.gif
     A         /work/www/index.html
     A         /work/www/js
     A         /work/www/js/main.js
     $

     * 追加したファイル及びディレクトリを反映させる。
     $ svn commit -m "" /work/www
     Adding         css
     Adding         css/common.css
     Adding         gif
     Adding         gif/menu.gif
     Adding         index.html
     Adding         js
     Adding         js/main.js
     Transmitting file data ....
     Committed revision 2.
     $

初期バージョンの作成 
     * 最新バージョン(trunk) を初期バージョンとして tags/v1.0.0 にコピーする。
     $ svn copy -m "" svn://localhost/www/trunk svn://localhost/www/tags/v1.0.0
     Committed revision 3.
     $

バージョン確認関連コマンド


バージョン間の差分ファイルを表示する。
$ svn diff --summarize svn://localhost/www/trunk svn://localhost/www/tags/v1.0.0
M      svn://localhost/www/trunk/index.html
M      svn://localhost/www/trunk/js/main.js
$

バージョン間の差分ファイルと差分の内容をする。
$ svn diff svn://localhost/www/trunk svn://localhost/www/tags/v1.0.0


   
先頭へ

      Document-Folder          一覧
HP-UX
HULFT
JAVA
JP1
JavaScript
Linux
MAC
PHP
Perl
Python
Ruby
SOA
Solaris
Unix全般
Windows
XML
エクセル
スタイルシート
セキュリティー
データベース
ネットワーク
パソコン
ブラウザ
プログラム構文
仮想化
          RSS-Folder
ニュース
   アットマーク・アイティ(@IT)
   シンクイット(ThinkIT)
   インターネットコム
   インターネットウォッチ
   日経IT-Pro
   日経パソコン
   CNET Japan
   ZD-NetJapan
   MYCOM
   RBB-Today
ベンダー
   日本IBM
   日本HP
   サンマイクロシステムズ
   NEC
   富士通
   日立
ソフトウェア
   マイクロソフト
   トレンドマイクロ
   オラクル
   サイボウズ
   Mozilla
   野村総合研究所
   (その他ソフトウェア企業)
更新履歴 一覧
 07/08 PERF
プログラム構文
 07/07 PERF
プログラム構文
 06/25 オブジェクトプログラミング2
Perl>サンプル
 07/12 クローン作成
仮想化>vCenter
 07/12 vyatta設定
ネットワーク>vyatta
 07/12 vyattaインストール
ネットワーク>vyatta
 07/12 リポジトリサーバ
Linux>サーバ構築
 07/05 VMwareのインストール
仮想化>VMware
 07/05 PXEブート
仮想化>KVM
 07/01 DHCPでのPXEブート
仮想化>KVM
 06/27 qcow2仮想DISK作成
仮想化>KVM
 06/13 NWの設定
仮想化>VMwareEsxi
 06/13 IPアドレスの変更
仮想化>VMwareEsxi
 06/12 自動ssh
Unix全般>シェル>Bash
 06/12 diffプログラミング
Python
Google