目次



リポジトリの新規作成

  1. 準備
    登録時のログ作成に使用するテキストエディタを環境変数 SVN_EDITOR, VISUAL, EDITOR のいずれかで指定する。
    subversion にはデフォルトのエディタは設定されてないので必ず指定が必要。
    # export SVN_EDITOR=vi

  2. SVNリポジトリ作成
    # svnadmin create /home/svn/sample-project
    # chown -R apache:apache /home/svn/sample-project  ← apacheユーザーに所有権変更

  3. trunk,tags,branchesディレクトリを作成
    # mkdir -P /home/svn/temp/{trunk,branches,tags}

  4. ディレクトリ構造をインポート
    # svn import /home/svn/temp file:////home/svn/sample-project

  5. 後始末 使用後のディレクトリを削除する
    # rm -rf /home/svn/temp

別な方法として...
Windous上でtrunk,tags,branchesの3つのフォルダが入ったtempフォルダを作成し、上記の「SVNリポジトリ作成」だけ実行後にTortoiseSVNでリポジトリにimportする。

trunk,tags,branchesの運用

参考サイト:takayukisの日記から引用

subversionのドキュメントには、おおむねこんなことが書いてあります。
* リリースが近づいたらリリースブランチを作り、
* ブランチ上ではバグフィックス以外の大きな変更はしないようになります。
* その間の機能追加などの大きな変更はtrunkで行います。
* ブランチはリリースするときにタグにコピーします。
* タグはそれ以上変更しないことでスナップショットとして使います。
* リリース後に見つかったバグの修正はブランチ上で行い、またタグをつけて修正版をリリースします。
branches
リリースが近づいたらリリースブランチを作成し、そのブランチではバグフィックス以外の大きな変更(機能追加等)は行わない。
テスト的に機能を組み込むなどしたい時などもtrunkのコピーから作成する。
tags
リリース用など。
変更はここでは行わない。
バグが見つかったらブランチで修正を行う。
trunk
通常の開発に使う。
基本的にcheckoutはこのディレクトリから行う。

サンプル

sample-project/           プロジェクトTop
   ├ branches/           ブランチを格納する為のディレクトリ
   │  ├ develop/        作成したブランチ
   │  └ test-build/     作成したブランチ
   │       :
   ├ tags/               タグを格納する為のディレクトリ
   │  ├ beta_release/   作成したタグ
   │  └ 1.0.0/          作成したタグ
   │  └ 1.0.0-r123/     作成したタグ
   │       :
   └ trunk/              本流のソースを格納

リポジトリの移設

サーバの移設等でリポジトリを移動する際の方法
dumpの出力

# svnadmin dump /path/sample-project /backup/sample-project.dmp


dumpのリストア

# svnadmin create /newpath/sample-project           ← svnリポジトリの新規作成

# svnadmin load /newpath/sample-project /backup/sample-project.dmp

TortoiseSVNの設定メモ

差分ビューアのコマンドライン

C:\~~~\WinMergeU.exe -e -ub -dl %bname -dr %yname %base %mine

マージツールのコマンドライン

C:\~~~\WinMergeU.exe -e -x -ub -wl -dl "■編集不可:相手(theirs) %tname■" %theirs -dm %mname %merged -wr -dr "■編集不可:自分(mine) %yname■" %mine

トップ   編集 凍結解除 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-05-10 (水) 20:54:00