[PR]今日のニュースは
「Infoseek モバイル」

プロ ジェクトホーム >> トップページ >> 開発に参加したい方へ >> Subversionの使い方 >> TortoseSVN初期設定

TortoiseSVN インストールと初期設定

このページの最新版は以下の場所をご覧ください
http://sakura-editor.wiki.sourceforge.net/InitTortoiseSVN

  1. パッケージの入手
  2. インストール
  3. 設定項目
    1. Auto-props (属性の自動設定)
      1. svn:mime-type
      2. svn:keywords
      3. svn:eol-style
    2. 無視ファイル: General (一般)
    3. Network (ネットワーク)
    4. 言語設定

パッ ケージの入手

TortoseSVNはTigrisSourceforge.netの 両方にページがあってどちらが本物かわかりにくいんですが,どちらも本物のようです.パッケージは

パッケージをSourceForge.net のダウンロードページからダウンロードします.(将来変更になるかもしれないので,上のトップページからたどった方が確実かも)

x.y.z, nnnn, a.b.cはバージョンアップの都度変更されます.

言語パックは必須ではありませんが,メニューやヘルプを日本語にしたい方はダウンロードしてください.

イ ンストール

本体,言語パックの順にインストールしてください.Explorerからダブルクリックして実行.インストール先以外特に設定はありません.インストール 後はExplorerへの組み込みのためにWindowsの再起動が必要です.

設 定項目

インストールが完了していれば,Explorer上のどこでもいいので右クリックするとTortoiseSVNというサブメニュー項 目が追加されているはずですのでそこを選択します.その中にある Settings... を選んで設定画面を開きます.

画面設定とか個人の好みの物は後からゆっくり各自でやってもらうとして,どうしても設定しておかないと困ったことになるものがあります ので以下のように設定してください.

Auto-props (属性の自動設定)

Generalページの下段中央にSubversion Configuration File: [ Edit ] という項目があります.(Editはボタン)

ファイルの下の方にAuto-propsというのがあります.これは新規ファイルを追加した場合に この設定に基づいて属性を自動設定する機能です.(新規ファイルをCommitするときにのみ意味を持ちますので,Commit権限がない人はあまり関係 ありません.)

svn:mime-type

Subversion ではmime-typesがtext/ で始まっていないとバイナリファイルとみなされて行単位の差分取得が出来なくなってしまいます. と思ったのですがそれは間違いで,mime-typeが未設定の場合,text/で始まる場合,及びimage/x-xbitmap, image/x-xpixmap の場合はテキストとみなされます.これはSubversionのソースコードでは libsvn_subr\validate.c にあるsvn_mime_type_is_binary()で 判定されています.

サクラエディタではソースファイルのmime-typesに text/plain;charset=SHIFT_JIS と文字コード付きで設定していますが,ここにはセミコロンや=を含んだ記述は出来ません.(Subversionのソースコード中  libsvn_client\add.c のauto_props_enumerator()関数を見る限り,=と;だけで分離しています.)

svn:keywords

これはCVSのようにソースコード中の$Id: $をバージョン文字列で置き換える機能のON/OFFを切り替えます.サクラエディタでは置き換えを利用しているので, 新規のソースファイルにもこの propertyが付くようにしてください.

Rev. #960にて$Id: $は削除しましたので,svn:keywordsの設定は必要ありません.

svn:eol-style

これは行末の改行コードを指定します.CRLFは環境にかかわらずCRLF, nativeは環境標準(Windows: CRLF, UNIX: LF, Mac: CR)の改行コードを使うことを表します.

このプロパティが設定されている場合,指定と異なる改行コードが含まれたファイルのCommitを拒否されます.

最終的に以下のようにしておきます.

enable-auto-props = yes

### Section for configuring automatic properties.
[auto-props]
# for sakura editor
*.c = svn:eol-style=native; svn:keywords=Id Revision; svn:mime-type=text/plain
*.cpp = svn:eol-style=native; svn:keywords=Id Revision; svn:mime-type=text/plain
*.h = svn:eol-style=native; svn:keywords=Id Revision; svn:mime-type=text/plain
*.tmpl = svn:eol-style=native; svn:keywords=Id Revision; svn:mime-type=text/plain
*.hm = svn:eol-style=native;svn:mime-type=text/plain
*.hh = svn:eol-style=native;svn:mime-type=text/plain
*.dsp = svn:eol-style=CRLF;svn:mime-type=text/plain
*.dsw = svn:eol-style=CRLF;svn:mime-type=text/plain
*.txt = svn:eol-style=native;svn:mime-type=text/plain
*.rc = svn:eol-style=native;svn:mime-type=text/plain
*.mak = svn:eol-style=native;svn:mime-type=text/plain
*.def = svn:eol-style=native;svn:mime-type=text/plain
*.png = svn:mime-type=image/png
*.jpg = svn:mime-type=image/jpeg
*.bmp = svn:mime-type=image/bmp
*.ico = svn:mime-type=image/x-icon
*.cur = svn:mime-type=application/octet-stream
Makefile = svn:eol-style=native; svn:keywords=Id Revision; svn:mime-type=text/plain
README = svn:eol-style=native;svn:mime-type=text/plain

参考 http://www.symfony-project.com/trac/wiki/SymfonyRepositoryTips

無 視ファイル: General (一般)

Generalページの下段の上の方にGlobal Ignore Patternという項目があります.何が何でもリポジトリに入れたくないパターンをスペースで区切って入力します.

[例] *.obj *.pch *.ncb *.idb *.res *.ilk

基本的には無視ファイルは各フォルダに設定します.サクラエディタでは主なファイルは既にディレクトリに無視ファイルの属性を設定済み ですので既存のブランチをチェックアウトして編集するだけなら問題にはならない と思いますが.新たなディレクトリへImportコマンドを使用してディレクトリごと追加する場合には注意する必要があります.Importでディレクト リを指定して実行すると,その中のファイルを選択する画面は出ずに全てのファイルが入ってしまうからです.

もう絶対リポジトリに入れるはずがない!というファイルはここへ記述しておいた方がよいかもしれません.ただ,これは全てについて効い てきますので設定しすぎると他のリポジトリで別な物を管理する場合に逆にはまる可能性もあります.

Network (ネットワーク)

Firewallのある環境ではここが設定されていないとリポジトリに接続できません.基本的には現在お使いのWebブラウザ (Internet Explorer等)と同じ設定にしてください.

言 語設定

メニューの言語を変更したい場合は Generalページの上の方にあるLanguage ドロップダウンリストから「日本語」を選択してOKしてください.以後メニュー及び設定が日本語になります.(このページでは英語メニューを前提に説明す るので,以後は項目を適宜読み替えてください)