CentOS4.x CentOS5.x CentOS6.x Subversion

Redhat Enterprise互換のLinuxディストリビューション CentOS に、Subversionをインストールします



subversionを使ってみる

前ページでSubversionのインストールが完了しましたので、実際に使ってみようと思います

「sample」というプロジェクトのソースをsubversionで管理する様にします。(リポジトリ名もsample)

なお、sampleプロジェクトは以下の様なディレクトリ/ファイル構成とします。

sample
  +--src/
    + aaaa.c
    + bbbb.c
    + include/
      +aaaa.h
      +bbbb.h

また、リポジトリの編成は以下の様にします。

sample/trunk        : 開発の主系
sample/branches     : ブランチのコピーを保持
sample/tags         : タグのコピーを保持

リポジトリの作成

リポジトリの作成場所は、/home/svn/repos/sampleとします。

ディレクトリを作成後、リポジトリをcreateします。

rootにて以下を実行します。

# mkdir -p /home/svn/repos/sample
# svnadmin create /home/svn/repos/sample

リポジトリの編成/ソースの追加

リポジトリの編成及びソースの追加を行います。

編成及びソース追加を一度に行う場合は、リポジトリのインポートで。

編成

sampleリポジトリにtrunk,branches,tagsディレクトリを作成します。

rootにて以下を実行します。

# svn mkdir file://localhost/home/svn/repos/sample/trunk -m "create"
# svn mkdir file://localhost/home/svn/repos/sample/branches -m "create"
# svn mkdir file://localhost/home/svn/repos/sample/tags -m "create"

ソースの追加

sampleプロジェクトのソース一式が/tmp/sample/以下にあると仮定します。

開発の主系であるtrunkにソース一式をインポートします。

#svn import /tmp/sample file://localhost/home/svn/repos/sample/trunk -m "import trunk branches and tags." 

リポジトリのインポート

リポジトリの編成/ソースの追加では編成・ソース追加と2回の手順で

作業を行いましたが、「リポジトリのインポート」を使えば1回で作業が完了します。

イメージの展開

リポジトリの編成イメージで、作業用ディレクトリにイメージを展開します。

ここでは、/tmp以下を作業ディレクトリとします。

# mkdir -p /tmp/sample
# mkdir -p /tmp/sample/trunk
# mkdir -p /tmp/sample/branches
# mkdir -p /tmp/sample/tags

(*)/tmp/sample/trunk下に、sampleプロジェクトのファイル群を配置します。

インポート

以下を実行し、リポジトリにインポートする。

#svn import /tmp/sample file://localhost/home/svn/repos/sample/trunk -m "import trunk branches and tags." 

タグの作成/ブランチの作成

タグ/ブランチとはソースのある時点でのスナップショットです。

例えば、「バージョン1.5」の時点での全ソースを後から取得したい場合にあらかじめバージョン1.5時点でのスナップショットを作成しておけば、いつでも取り出せます。

なお、subversionではタグ/ブランチの区別はありません。(ブランチは、最終的にtrunkにマージされるはず・・)

要は「どう使うか」です。

リポジトリの構成で、タグはtags、ブランチはbranchesと決めたので、それぞれの所に以下を実行してtrunkのある時点でのスナップショットを作成します。

#svn copy file://localhost/home/svn/repos/sample/trunk file://localhost/home/svn/repos/sample/tags/release-1.5 -m "Release 1.0"

これで、Release1.5のタグが作成されました。


目次

  • Page.1
    • 構築する環境
    • subversionの導入
  • Page.2
    • subversionを使ってみる
      • リポジトリの作成
      • リポジトリのインポート
      • ブランチ/タグの作成
  • Page.3
    • WebDAVでのリポジトリ公開

      http://ホスト名/svn/xxx でリポジトリにアクセスできる様、apacheの設定を行います

  • Page.4
    • WebDAVアクセス認証の設定
      • 匿名アクセスの設定
      • 認証つきアクセスの設定
      • 認証つき/匿名の両方でアクセスする場合の設定
      • 特定ディレクトリ以下のみ参照不可とする

関連ページ